ie11与嵌套的showModalDialog有关

时间:2014-12-15 07:26:40

标签: javascript internet-explorer-8 nested internet-explorer-11 showmodaldialog

我正在使用一个Web应用程序,它使用许多模态对话框来获取输入。当我开始使应用程序与IE11兼容时,问题就开始了(它在IE8中运行得非常好)。当从主页调用时,模态对话框完全返回值,但是当我从模态对话框创建模态对话框时,返回值但未被捕获并被视为undefined

//calling the values
var ret = ShowDialogOpen(pageUrl, width, height);

function ShowDialogOpen(PageName, strWidth, strHeight) {
    var DialogOptions = "Center=Yes; Scrollbar=No; dialogWidth=" + strWidth + ";          dialogTop=150px; dialogHeight=" + strHeight + "; Help=No; Status=No; Resizable=Yes;";
    var OpenUrl = PageName; 
    var ret = window.showModalDialog(OpenUrl, "Yes", DialogOptions);
		    
    return ret;
}

//Dialog returning values
function ReturnValues() {
    var lstBox = document.getElementById("lst_Name");
    var texts = "";
    var values = "";
    for (i=0; i<lstBox.options.length; i++) {
        texts = texts + lstBox.options[i].text + "!";
        values = values + lstBox.options[i].value + "!";
    }

    window.returnValue = texts + "$" + values;
    Close();
    return false;
}

当通过主页使用时,此代码可以正常工作,但是当我从模态对话框页面使用它时,returnValue会丢失。

1 个答案:

答案 0 :(得分:6)