刚才在做一个功能,在页面A上面点击某个按钮,弹出模态窗口(window.showModalDialog),页面为B。在页面B上有一个按钮,需要在当前的模态窗口中加载页面C,但是经过测试发现在页面B上适用window.href="C.html"或者window.navigate("C.html")都会打开新的IE窗口。只好想一个变通的办法,当页面B的按钮点击之后,设置window.returnValue="GOTO_C",就是设置一个特殊的返回值,来标识要转向页面C。页面B的按钮点击代码如下:
function gotoNextStep() {
window.returnValue = "GOTO_NEXT_STEP";
window.close();
}
页面A的代码就要判断B返回的值是什么,然后决定如何对应动作。
function popupB() {
var retVal = window.showModalDialog("B.htm", "",
"dialogHeight:286px; dialogWidth:408px; center:yes; resizable:yes");
if (retVal == "GOTO_C") {
window.showModalDialog("C.htm", "",
"dialogHeight:286px; dialogWidth:408px; center:yes; resizable:yes");
}
return true;
}
逻辑上有点怪异,但是现在能够想到的就是这个变通方法了。
测试环境:Windows XP SP2, IE 6.0
posted on 2008-05-09 10:44
YODA 阅读(1030)
评论(1) 编辑 收藏