懂得放弃,才会有新的收获!

Firefox 下不能用window.showModalDialog的解决办法

By weisnet On 2009-05-04 At 20:06 View:330

那就是用window.open

在FF写法是这样的 window.open ('exam.html',null,'width=34,height=45,modal=yes'); modal = yes要写;

那怎么返回值呢?

exam.html页面内,取得要返回的值时,写个方法就可以. (此可方法写在window.close()后面,)

假如这个方法叫 setValue;  主窗口要接收的控件假设为文本框(input,ID为 idBox)

function setValue(rv) //rv返回值

{

    window.opener.document.getElementById('idBox').value = rv;

}

//////////////////////////////////////////////////////

如果a.html是父窗体,b.html是window.open的面页 (dialogArguments)

var setTem = window.open ('b.html',null,'width=34,height=45,modal=yes');

setTem.dialogArguments = window;

setTem.focus();//把窗口置于前面

 

那如果a.html有什么方法或对象,都可以通过: window.dialogArguments 来获取.

比如a.html有一个方法

function aHasMethod()

{

   this.someMehotd = someMethod;

   ....

}

在b.html可以这样调用:

window.dialogArguments.aHasMethod();

当然也可以这样获取 parent.aHasMethod();

·上一篇:.net1.1 在firefox 上传文件的特殊情况
·下一篇:WinXP“添加删除WIndows组件”中没有IIS也能安装

for this post

 
 

Leave a Reply

赶快抢个沙发坐坐!
请先 登陆  还没帐号

Hot Posts Powered by weiseditor

  • Add to Google

Friend links