思路:用window.showModalDialog方法获取到弹出子窗体的引用,再在子页面用window.returnValue="***"来返回结果。
示例代码:(用jQuery简化实现)
父页面:parent.html
父页面子页面 son.html
子窗体苹果
橘子
香蕉
总结:
参数传递:
1. 要想对话框传递参数,是通过vArguments来进行传递的。类型不限制,对于字符串类型,最大为4096个字符。也可以传递对象,例如:
-------------------------------
parent.htm
var obj = new Object();
obj.name="51js";
window.showModalDialog("son.htm",obj,"dialogWidth=200px;dialogHeight=100px");
son.htm
var obj = window.dialogArguments
alert("您传递的参数为:" + obj.name)
2. 可以通过window.returnValue向打开对话框的窗口返回信息,当然也可以是对象。例如:
parent.htm
str =window.showModalDialog("son.htm",,"dialogWidth=200px;dialogHeight=100px");
alert(str);
son.htm
window.returnValue="http://blog.csdn.net/a497785609";
扩展:
在.net中,可以通过这种方式来实现AJAX效果。当子页面传递所要选择的参数后,父页面可以实现ICallbackEventHandler接口,直接将获取到的值传回服务器端。或者用UpdatePanel的Load事件来扑捉到传递过来的参数,从而继续进行服务器端处理。
以上这篇JavaScript 弹出子窗体并返回结果到父窗体的实现代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。