2015-07-13 58 views
-1

我寫了一個Java腳本函數,我調用Ajax打開窗口在同一個選項卡。當我設置異步:假它在Mozilla中工作,但不會在Chrome和IE中工作。在Chrome和IE中,我們需要設置async:true,但是在設置async:true後,它在Mozilla中不起作用。 以下代碼我正在使用ajax異步在瀏覽器中工作

示例。

var t = document.getElementById('toolt').title = 'test'; 
t = 'test' 
function loadEditWindow() { 
    window.setTimeout(function() { 
     $.ajax({ 
      async: false, 
      success: function (MSG) { 
       window.open('URL', "_self"); 
      } 

      return false; 


     }, 
     error: function (MSG) { 
      alert("Error"); 
     } 

     }); 
    }, 2000); 
return false; 
} 
+0

僅供參考,你從來沒有設置一個Ajax請求同步的,不贊成這種方式 –

+1

我相信,在大多數現代瀏覽器,'window.open'必須觸發用戶點擊,任何其他調用方式將被內置彈出窗口阻止程序阻止。 – alan0xd7

回答

0

我試着清理你的代碼。

試試這個:

function loadEditWindow() { 
    window.setTimeout(function() { 
     $.ajax({ 
      async: false, 
      success: function (MSG) { 
       window.open('URL', "_self"); 
      }, 
      error: function (MSG) { 
       alert("Error"); 
      } 
     }); 
    }, 2000); 

    return false; 
} 
+0

感謝您的快速回答。但同樣的問題發生,我們不能瀏覽鉻 – Swapnil

+0

@Swapnil那麼,你問原來的問題是不是問題。我建議關閉這個問題,調試出錯的地方,並問一個新的和內容豐富的問題​​。 「不能導航鉻」不是一個好的描述。 – OptimusCrime

+0

抱歉我的bad.i嘗試你提供的代碼在application.but但同樣的問題,我面臨。當我設置Ajax async屬性爲false window.open(url)不起作用在谷歌瀏覽器和IE.the頁面加載本身並且進程停止 – Swapnil

相關問題