Javascript window.showModalDialog在Edge中已完全弃用

Javascript window.showModalDialog在Edge中已完全弃用,javascript,jquery,microsoft-edge,showmodaldialog,Javascript,Jquery,Microsoft Edge,Showmodaldialog,我有一个网站是与边缘兼容(它只与IE兼容之前…) 问题是,我不明白如何处理旧的showModalDialog元素。我希望有一个简单的解决办法,但我认为这是没有希望的。我需要一个返回值 以下是我当前的代码: function openCalendar(oDate){ if (typeof jQuery != 'undefined' && oDate instanceof jQuery) { var dateValue = oDate.val();

我有一个网站是与边缘兼容(它只与IE兼容之前…)

问题是,我不明白如何处理旧的
showModalDialog
元素。我希望有一个简单的解决办法,但我认为这是没有希望的。我需要一个返回值

以下是我当前的代码:

function openCalendar(oDate){
    if (typeof jQuery != 'undefined' && oDate instanceof jQuery) {
        var dateValue   = oDate.val();
        var color       = oDate.css('color');
    }else{
        var dateValue   = oDate.value;
        var color       = oDate.style.color;
    }

  var month     = "";
  var year      = "";

    if (dateValue != "" && color != "red") {
        month = dateValue.substring(3,5);
        year  = dateValue.substring(6,10);
    }
  search    = window.showModalDailog('../calendar/calendar.jsp?month='+month+'&year='+year ,null,'dialogWidth=220px;dialogHeight=220px;STATUS:NO;SCROLL:NO;help:no');

  if (search != null && search != "undefined" && search != "") {
        if (typeof jQuery != 'undefined' && oDate instanceof jQuery) {
            oDate.val(search);
            oDate.css('color', "");
        }
        else {
            oDate.value           = search;
            oDate.style.color   = "";
            oDate.className   = "InputText";
        }
  }
}
在这种情况下我该怎么办

谢谢你的帮助


注意:我必须使用jQuery 1.3.2作为替代,您可以尝试使用Window.Open()。你可以检查它,不管它是否解决了你的问题

代码示例:

函数ShowInformationMessage(消息){
var ie=document.all;
varl url='../TestWeb/Error/ErrorMessages/PopInfoUI.aspx?val='+message
如果(即)
showModalDialog(url,“窗口”,“状态:否;帮助:否;对话框宽度:400px;对话框高度:120px”);
否则{
var theWin=window.open(url'theWin',宽度=400,高度=120,状态=no');
theWin.focus();
}

}
您可以使用polyfill:。不过,我强烈建议重构代码库。
showModalDialog()
和jQuery 1.3.2都已经过时了。