模式窗口的用法
一、问题:
我想弹出一个窗口,然后在弹出的窗口里,选择或输入一些信息,要求这些信息返回到父页面。
建立父页面:a.htm
建立子页面:b.htm
这里利用了模式窗口window.showModalDialog(),利用window.returnValue = window.showModalDialog(sURL [, vArguments] [, sFeatures]),我们可以打开一个模态窗口,该窗口的优点是限制用户只能对当前的页面进行操
作,而对其父页面不能进行操作,常用于向导或者信息获取页面。利用其中的vArguments我们可以在父页面和弹出的页面中进行参数的传递,参数可以为自定义的对象,也可以传递父页面中任何一个控件的引用,这使得我们可以很容
易的来操作父页面中的各个元素,使得参数的传递变得非常容易。
二、第2个参数的讨论
showModalDialog("子页面地址","向子页面传递参数","子页面外观设置"),关于参数的详细设置看最后的注释,这里主要研究下第2个参数。
1.第2个参数为自定义对象
我们可以定义一个javascript对象,然后定义各种自定义属性的值,然后可以将此对象传递到子页面中。
例:将父页面的信息封装成一个对象,然后将该对象传递给子页面。
父页面:oneParent.htm
之后才能正确运行,否则出现运行时间错误,找不到document.forms[0].txtName对象
2.第2个参数是父页面的一个元素
我们可以将父页面中元素对象的引用传递给子页面,通过该引用我们可以访问父页面中的该元素对象。
例:其中利用元素对象的引用我们可以操纵父页面的元素对象的属性。
父页面:twoParent.htm