jQuery UI模式对话框导致网页过期错误

时间:2013-03-14 14:59:40

标签: jquery asp.net internet-explorer-9

我只在IE9中收到"webpage had expired"错误。我正在调用带有2个提交按钮(图像按钮)的模态对话框。当我点击它们 我可以看到弹出窗口,然后我收到“网页已过期”消息。

我的功能:

moreSubscribersQuestions: function () {
        var dlg=  $("#dialogMoreClients").dialog({
            modal: true,
            //dialogClass: 'WsErrorMessage'
            dialogClass: 'addMoreClientPopUp',
            width: 500,
            height:400
        });
        $('.ui-helper-clearfix:after').removeClass();
        //$('div.FinishPurchasePopUpBTn').each(function () {
        //    this.addClass('FinishPurchasePopUpBTn');
        //});
        dlg.parent().appendTo(jQuery("form:first"));
    }

删除dlg.parent().appendTo(jQuery("form:first"));后,问题不再发生。有什么建议?

1 个答案:

答案 0 :(得分:0)

弗雷泽谢尔曼的这篇文章The Most Likely Cause of "Webpage Has Expired"描述了为什么你可能会在IE中看到错误的原因。以下是我读过的forum post的其他一些想法。

如果您不知道自己在做什么,听起来您可能已经执行过POST(可能使用ASP.NET),然后尝试将用户重定向到浏览器历史记录中的页面。

解决问题的选项可能是......

  1. 找到另一种方法来重定向除window.history.go或类似技术(首选)
  2. 以外的用户
  3. 确保页面无法缓存(可能会影响性能)
  4. 将页面踢入兼容模式(最后手段)
  5. 查看对话框中的代码会很有帮助。这可能会让您更深入地了解正在发生的事情。