2013-07-19 107 views
0

我面對我的AJAX功能在Chrome,Firefox和IE也是9個工作罰款問題,但在IE 7和IE 8AJAX功能n工作在IE 7中NAD工作IE 8

不工作這是我的AJAX代碼。

var url = 'abcd.php'; 
var dataString = '&id='+id+'&type=mesg'; 
$.ajax({ 
    url: url, 
    global: true, 
    type: "POST", 
    data: dataString, 
    dataType: "html", 
    success: function(msg) 
     { 
     alert(msg); 
      $('#main_data').html(msg); 
     } 
    }); 

它工作正常,直到alert味精,但不顯示任何輸出。

請幫幫我。

+0

你能顯示相關的html嗎? –

+0

如果代碼達到'alert(msg);',下一行將失敗的唯一原因是如果沒有帶'id =「main_data」的div' –

+0

這是我的HTML代碼: – Delta

回答

1

我認爲你正在使用jquery version 2+不支持IE 6/7/8 < IE 9

沒有更多的支持:Remember that this can also affect IE9 and even IE10 if they are used in their 「Compatibility View」 modes that emulate older versions. To prevent these newer IE versions from slipping back into prehistoric modes, we suggest you always use an X-UA-Compatible tag or HTTP header. If you can use the HTTP header it is slightly better for performance because it avoids a potential browser parser restart.

jquery-2-0-released

所以,你應該使用jquery version 1.9 for older versions of IE like IE 6,7,8 或者您可以將其添加到您的html page

<!--[if lt IE 9]> 
<script src="jquery-1.9.0.js"></script> 
<![endif]--> 
<!--[if gte IE 9]> 
<script src="jquery-2.0.0.js"><</script> 
<![endif]--> 
+0

我已經改變了jquery版本1.9但仍然是問題仍然是一樣的 – Delta

+0

但實際上我使用的是jquery-1.6.1 – Delta

0

使用此代碼

$.support.cors= true; 
var url = 'abcd.php'; 
var dataString = '&id='+id+'&type=mesg'; 
$.ajax({ 
async: false, 
url: url, 
global: true, 
type: "POST", 
data: dataString, 
dataType: "html", 
success: function(msg) 
    { 
    alert(msg); 
     $('#main_data').html(msg); 
    } 
}); 
+0

不能在IE 8和7中工作 – Delta

0

如果您使用UTF-8編碼的AJAX響應,IE不能自動確定它,除了它會拋出異常:「系統錯誤1072896658」。

AJAX but in IE

也詳情請參見:http://keelypavan.blogspot.com/2006/07/system-error-1072896658-in-ie.html

於是,就有了一個解決方案。您應該在abcd.php中添加一個HTTP標頭來聲明編碼。

例如

<?php 

//... do something 
header('Content-Type: text/html; charset=utf-8'); 
echo $resonse_text; 
+0

我應該在Ajax函數中還是在Ajax輸出中添加此代碼 – Delta

+0

@Delta Ajax輸出 – CodeColorist

+0

不工作問題仍然相同 – Delta