PDA

View Full Version : سوال: این کد در GridView چه کار میکند؟



elham1611
سه شنبه 25 اسفند 1388, 01:12 صبح
به لطف راهنمایی دوستان راه حلی برای باز شدن سطر انتخاب شده در GridView پیدا کردم. که لینک سوالات و جوابها در این زمینه رو در پایین قرار دادم

http://barnamenevis.org/forum/showthread.php?p=933084#post933084
(http://barnamenevis.org/forum/showthread.php?p=933084#post933084)
http://barnamenevis.org/forum/showthread.php?t=58450

-------------------------------------------------------------------------------------------------------

اما مشکلی که تمامی آنها دارند این است که صفحه جدید را مروگر به عنوان یک POPUP در نظر میگیرد و آن را بلوکه میکند که در نتیجه برای کاربر ایجاد مزاحمت میکند.:ناراحت:

با جستجو در سایت www.asp.net کد زیر را بدست آوردم که به عنوان راه حلی برای این مشکل در نظر گرفته شده است اما نمیدانم چرا کار نمیکند.

ممنون میشم اگر کد را اصلاح کنید یا راهنمایی کنید.



protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{

HyperLink mylink;
foreach (GridViewRow gvRow in GridView1.Rows)
{
mylink = (HyperLink)gvRow.FindControl("HyperLink1");
mylink.Attributes.Add("onClick", "NewWindow(this.href,'mywin','440','390','yes','cen ter');return false");

}

}

Milad Mohseny
سه شنبه 25 اسفند 1388, 01:40 صبح
بالاخره رسيدي به راه حلي كه دوستان تو تاپيك هاي قبلي ميگفتن.
1) چه خطايي ميده
2) كجا خطا ميده.
3) تابع جاوا اسكيريپتي NewWindow رو سمت كلاينت قرار دادي؟
اگه كد سمت كلاينتت رو هم بزاري بهتر ميشه راهنمايي كرد.

reza.ziyaee
سه شنبه 25 اسفند 1388, 01:45 صبح
سلام دوست عزیز کد بالا که خیلی واضح است !

اول اومده یک HyperLink داخل گرید ویو گذاشته .(این تو کد شما نیست )
بعد اومده اون تک تک رکورد ها رو خونده و بعد اون HyperLink لینکی که داخل گرید ویو بوده رو پیدا کرده و در خط بعدی هم اومده به رویداد onclick اون HyperLink یک کد جاوااسکریپت داده که باعث می شه یک پنجره با ابعادی که داخل اون کد جاوا اسکریپت نوشته شده باز شود .

Milad Mohseny
سه شنبه 25 اسفند 1388, 01:49 صبح
سلام دوست عزیز کد بالا که خیلی واضح است !

اول اومده یک HyperLink داخل گرید ویو گذاشته .(این تو کد شما نیست )
بعد اومده اون تک تک رکورد ها رو خونده و بعد اون HyperLink لینکی که داخل گرید ویو بوده رو پیدا کرده و در خط بعدی هم اومده به رویداد onclick اون HyperLink یک کد جاوااسکریپت داده که باعث می شه یک پنجره با ابعادی که داخل اون کد جاوا اسکریپت نوشته شده باز شود .
الان جواب منو دادي يا elham1611 ؟؟ :گیج:
چون elham1611 نگفت كد چجوري كارميكنه گفت كار نميكند.

elham1611
سه شنبه 25 اسفند 1388, 02:05 صبح
این تعریف کد newwindow که چندان مهم نیست



<script language="javascript">
var win=null;
function NewWindow(mypage,myname,w,h,scroll,pos){
if(pos=="random"){LeftPosition=(screen.width)?Math.floor(Math.rand om()*(screen.width-w)):100;TopPosition=(screen.height)?Math.floor(Mat h.random()*((screen.height-h)-75)):100;}
if(pos=="center"){LeftPosition=(screen.width)?(screen.width-w)/2:100;TopPosition=(screen.height)?(screen.height-h)/2:100;}
else if((pos!="center" && pos!="random") || pos==null){LeftPosition=0;TopPosition=20}
settings='width='+w+',height='+h+',top='+TopPositi on+',left='+LeftPosition+',scrollbars='+scroll+',l ocation=no,directories=no,status=no,menubar=yes,to olbar=no,resizable=no';
win=window.open(mypage,myname,settings);}


</script>

اما مشکل اصلی اینه که اگر قبلیها به صورت پاپ آپ باز میشدن این یکی اصلا هیچ اتفاقی نمیافته وقتی که روی دکمه select کلیک میکنم.

من چی کار کنم که این صفحه باز شه:گریه:
--------------------------------------------------
در ضمن من آشپزیمم خیلی خیلی خوبه قول میدم شما هم اگه بیای آشپزی کنی چون اول کاری دچار اشتباه میشی مثل من

Milad Mohseny
سه شنبه 25 اسفند 1388, 02:29 صبح
ببين اين فايلي كه ضميمه كردم ميتونه ناراحتيتو برطرف كنه.
من تستش كردم درست كار ميكنه.

Milad Mohseny
سه شنبه 25 اسفند 1388, 02:57 صبح
مثالي كه تو لينك زير هستش رو هم ببين ميتوني باهاش modal Popup درست كني. يعني تا كاربر پنجره popup رو نبنده به قسمت ديگه اي از مرورگرت دسترسي نداره و حتماً بايد تكليف popup رو مشخص كنه. در ضمن با اين مثال ميتوني حتي مقداري رو هم از پنجره popup به سمت والدش بفرستي. مثلاً رنگ انتخابي كاربر رو به صفحه اصلي بفرستي.
http://www.codestore.net/store.nsf/unid/DOMM-4R5MDQ