2013-03-18 66 views
-2

出於某種原因,我在使用ajax請求時沒有得到響應。它不適用於Internet Explorer和Opera。它適用於Firefox和Chrome。下面是代碼:Ajax請求在IE和OPERA上不起作用

$(document).ready(function() { 
    $("#registration").submit(function (e) { 
     e.preventDefault(); 
     var str = $(this).serialize(); 
     $.ajax({ 
      type: "POST", 
      url: "/ajax.php", 
      data: str, 
      success: function (msg) { 
      alert(msg); 
      } 
     }); 
    }); 
}); 

我加AddDefaultCharset utf-8.htaccess文件,但我還是不明白這一點對IE和Opera工作。

可能是什麼問題?

+2

什麼是調試器和/或控制檯說?你爲什麼不像處理成功一樣處理錯誤? – 2013-03-18 09:19:30

+1

哪個版本的IE? – JJJ 2013-03-18 09:19:48

+1

你爲什麼使用完整的URL?您是否嘗試進行跨域請求? – ahren 2013-03-18 09:20:35

回答

0

在過去,我面臨同樣的問題。解決它的方法是將.ajax調用放在var上。

var callAjax = function(){ 
$.ajax({ 
     type: "POST", 
     url: "/ajax.php", 
     data: str, 
     success: function (msg) { 
     alert(msg); 
     } 

};

也嘗試把以下jQuery以外的Click事件。 (全球)

var str = $(this).serialize(); 

我希望這會有所幫助。