2015-03-13 42 views
0

我們的一位測試人員同時打開Chrome和IE,在應用程序的同一頁面上進行並行比較。 )(她是一個ASP.NET MVC項目)她發現,如果她開始在Chrome中運行ajax調用,然後翻轉到IE並執行相同的操作,那麼她期望在Chrome中得到的結果實際上在IE中顯示,而沒有任何反應在Chrome中。就好像IE中的函數正在攔截結果一樣。瀏覽器之間的Ajax數據交叉?

我甚至不知道這是可能的。有什麼建議?

這是ajax調用。當這是在Chrome和IE瀏覽器中首先啓動的時候,我預期Chrome的結果實際上會在IE中加載。

 $.ajax({ 
     url: '/Product/Load/', 
     type: 'POST', 
     data: { 
      catalogid: catalogid, 
      styleid: styleid, 
      shapeid: shapeid, 
      editmode: editmode 
     }, 
     cache: false, 
     success: function (result) { 
      if (result.Error == null) { 
       $('#questionPanel').html(result.ViewString); 
       $('#questionPanel').show(); 
      } else { 
       $("#loadingIndicator").hide(); 
       alert("An error occurred loading this product."); 
      } 
     }, 
     error: function() { 
      alert("An error occurred loading this product"); 
     } 
    }); 
+0

對於我知道,IE應該檢索瀏覽器的結果(如果正確結束)和它自己的結果。但是,兩個瀏覽器同時工作時,在相同的數據上,它可能很危險,因爲您不知道哪個請求首先結束。 – vdubus 2015-03-13 14:45:39

回答

0

聽起來像是緩存我...嘗試$就()的緩存:假

http://api.jquery.com/jquery.ajax/

+0

我們確實在所有ajax調用中設置了緩存:false,因爲我之前在IE中遇到過問題。但即使是緩存,是不是瀏覽器緩存?我很困惑它是如何在瀏覽器之間「跨越」的。 – 2015-03-13 14:39:21

+0

交叉聲音真的很奇怪,這就是爲什麼我認爲它是緩存和誤解:)我認爲你必須給我們.NET代碼來幫助你 - 或者至少描述它的功能。 – 2015-03-13 14:41:12

+0

我添加了ajax調用。 .NET代碼只是通過一系列下拉菜單加載視圖。所以基本上我期望在Chrome中加載的視圖在IE中加載。 – 2015-03-13 14:54:07

相關問題