2013-03-14 62 views
2

我在IE9中只收到"webpage had expired"錯誤。我用2個提交按鈕(圖像按鈕)調用模態對話框。當我點擊他們 我可以看到彈出,然後我得到「網頁已過期」的消息。jQuery UI模式對話框導致網頁出現錯誤

我的功能:

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"));後問題不會發生了。有什麼建議麼?

+0

你可以發佈剩餘的.aspx代碼嗎?你想用dlg.parent()實現什麼?appendTo(jQuery(「form:first」));線? – Rob 2013-03-14 17:57:55

+0

with dlg.dlg.parent()。appendTo(jQuery(「form:first」));我可以使用按鈕作爲asp:imagebutton(事件)。 – Adleron 2013-03-15 12:08:12

+0

沒有更多的代碼,很難說出發生了什麼。 – Rob 2013-03-15 13:02:23

回答

0

Fraser Sherman的這篇文章The Most Likely Cause of "Webpage Has Expired"描述了爲什麼你可能會在IE中看到該錯誤的一些原因。以下是我讀過的forum post的一些額外想法。

不知道你在做什麼,這聽起來像你可能已經執行POST(可能與ASP.NET),然後嘗試將用戶重定向到瀏覽器歷史記錄中的頁面。

選項來解決該問題可能是...

  1. 找到另一種方式來重定向比window.history.go或類似的技術,其它用戶(最好)
  2. 確保頁面是不能被緩存(可能影響性能)
  3. 踢頁面到兼容模式(最後)

這將是有益的,看看你的對話框內的代碼。這可能會更深入地瞭解正在發生的事情。

+0

彈出窗口出現後,在用戶回答彈出窗口上的問題之前,沒有任何事情發生。 並且按鈕功能位於同一頁面後面的代碼中......沒有重定向到另一個頁面。 不同的想法是,該行可以觸發安全問題,因爲這個問題只發生在生產層面 – Adleron 2013-03-17 12:00:36

+0

@Rob在這裏我從代碼後面調用js 你需要點擊事件2嗎?如果(_lead.isAsked == false && _lead.Subscribers.Count <_lead.MaxSubscribers) {0121}真正); } else { finishPurchase(); } } – Adleron 2013-03-18 09:46:00