以下代码在Internet Explorer 9和10上运行良好,但在Internet Explorer 7和8中没有结果。
$.ajax({
url: url,
cache: false,
async: true,
success: function(req, textStatus, obj) {
},
error: function(req, error, exc) {
alert(req.responseText);
}
});
Ajax请求调用的URL的结果是:
<?xml version="1.0"?>
<BRILJANT>
<VP>
<NETTOVP>45,4545</NETTOVP>
<NETTOVPINCL>55</NETTOVPINCL>
<BRUTOVP>45,4545</BRUTOVP>
<BRUTOVPINCL>54,9999</BRUTOVPINCL>
<ORIVP>55,43</ORIVP>
<ORIVPINCL>67,0703</ORIVPINCL>
<KORTING1>0</KORTING1>
<KORTING2>0</KORTING2>
<SOORTPRIJS>P</SOORTPRIJS>
</VP>
<TEL>
<VOORRAAD>0</VOORRAAD>
<INBACKLEV>0</INBACKLEV>
<INBACKKLA>6</INBACKKLA>
<CONSIGN>0</CONSIGN>
<MAGCTRL>0</MAGCTRL>
<INPROD>0</INPROD>
<OPAFLEVER>0</OPAFLEVER>
<VOORRRES>0</VOORRRES>
<VOORZPROD>0</VOORZPROD>
</TEL>
</BRILJANT>
在Internet Explorer 7和8中,即使未提及错误消息,请求对象内容也为空。
任何想法都很受欢迎!
答案 0 :(得分:1)
jQuery 2.0放弃了对oldIE(&lt; 9)的支持,因此如果您使用的是最新版本,则可能与IE7&amp; 8所以你最多应该使用1.10版本。如果您使用的是1.X版本,则提供版本会很有帮助,因为您可能正在使用具有已知错误的版本。
答案 1 :(得分:1)
通过为低于9的Internet Explorer版本添加此行代码,DOM对象已正确填写!
$.ajax({
url: url,
cache: false,
async: true,
success: function(req, textStatus, obj) {
>> if (ie < 9)
>> req = $.parseXML(obj.responseText);**
},
error: function(req, error, exc) {
alert(req.responseText);
}
});