日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

向模态窗体传递参数和获取返回值

發(fā)布時間:2024/4/11 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 向模态窗体传递参数和获取返回值 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1.向window.showModalDialog 傳遞參數(shù)
? window.showModalDialog 方法的第二個參數(shù)就代表父窗體傳遞到模態(tài)窗體的參數(shù)值,可以為任何對象或數(shù)組),也可以不傳遞參數(shù),直接為null就行。此參數(shù)是可選的。原型如下:
????? vReturnValue = window.showModalDialog(sURL [, vArguments] [, sFeatures])
例子:
?? var params = [document.getElementById("tbCorpName"),document.getElementById("tbCorpId")]; //參數(shù)
?? var returnValue = window.showModalDialog("selectclient.aspx",params ,"dialogLeft:1px;dialogTop:1px;dialogWidth:500px;dialogHeight:430px;resizable:yes;status:no");
這樣我們就可以在模態(tài)窗體中用 window.dialogArguments 屬性獲取傳遞進來的參數(shù)。
?function setCorpName(corpname,corpid)
??? {
???????? var params = window.dialogArguments ;?? //獲取父窗體傳遞進來的參數(shù);
???????? params[0].value = corpname;?? //設置父窗體中文本域字段的值。
???????? params[1].value = corpid;
???????? self.close();? //關閉模態(tài)窗體。
??? }
這種方式在Firefox 下有個問題。如果模態(tài)窗體是動態(tài)頁面(aspx頁面),如果在模態(tài)窗體中涉及到與服務器端交互的話,如“查詢”事件,則當點擊“查詢”按鈕后,firefox 中就再也不能通過 window.dialogArguments 屬性獲取到傳遞進來的參數(shù)。也就是說在Firefox 中只是第一次彈出窗體時,能夠獲取到父窗體傳遞的參數(shù),其他任何與服務器交互后,都將導致參數(shù)信息丟棄。IE中不存在這個問題。所以如果你想在模態(tài)窗體中訪問父窗體中的對象,最好不要采用這種方式。看下面第二種方式:

2.從模態(tài)窗體獲取返回值:
?? window.showModalDialog 方法的返回值就是模態(tài)窗體的的返回值。通過在模態(tài)窗體中用 window.returnValue 屬性設置。
//父窗體代碼:
?? var returnValue = window.showModalDialog("selectclient.aspx",null,"dialogLeft:1px;dialogTop:1px;dialogWidth:500px;dialogHeight:430px;resizable:yes;status:no");
?if(returnValue)
?{
?????? var arrValue = returnValue.split(":");? //以冒號分隔值
?????? document.getElementById("tbCorpName").value = arrValue[0];
?????? document.getElementById("tbCorpId").value = arrValue[1];
?}
//模態(tài)窗體代碼:
function setCorpName(corpname,corpid)
??? {
???????? window.returnValue = corpname + ":" + corpid;??? //設置從模態(tài)窗體返回的值
???????? self.close();
??? }
另外注意在模態(tài)窗體的<head> 區(qū)加上:
<base target="_self"></base>
這樣可以防止在模態(tài)窗體中點擊按鈕提交時打開新窗體的問題。

轉載于:https://www.cnblogs.com/fhuafeng/archive/2010/07/02/1769841.html

超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

總結

以上是生活随笔為你收集整理的向模态窗体传递参数和获取返回值的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。