showModalDialog的返回值

以前一直以為showModalDialog無法做返回值的動作,現在看來以前的想法是錯誤的,注意在返回值的時候無法直接返回數組,所以要采用字符串的形式返回,然后再進行split拆分.

//如果要轉載本文請注明出處,免的出現版權紛爭,我不喜歡看到那種轉載了我的作品卻不注明出處的人 Seven{See7di#Gmail.com}
方法一:利用returnValue  
1、在WEB对话框中,设returnValue="返回值1"+"|"+"返回值2"(注意返回值总长度不能超过4096个字节)  
2、在主页面中:  
        retvar=showModalDialog("test.htm");  
        ret=retvar.split(/|/g);   
        alert(ret[0]+"\n\n"+ret[1]);  
   
方法二:利用给主页面中的变量赋值的方法  
1、在主页面中预先定义两个变量x1,x2,即:  
        var   x1,x2;  
         
2、在web对话框中,给主页面赋值。  
        parent.x1="1234567890";   
        parent.x2="xyz";  

給出一個例子:

<script type='text/javascript'>
function Dialog(url,name,w,h){
return showModalDialog(url, name, 'dialogWidth:'+w+'px; dialogHeight:'+h+'px; help: no; scroll: yes; status: no');
}

var arr=Dialog('http://192.168.0.7:8080/index.html', '', 700, 500);
if(arr!=null){
var s=arr.split('|');
alert(s[0]);
//try {$(textid).value=s[1];}catch(e){};
}
</script>

index.html內要放如下代碼返回值
var rt = "啊啊啊";
window.returnValue = rt;


你可能感兴趣的:(showModalDialog)