jQuery1.4.2 ajax存在一个严重bug问题

  最新的jQuery1.4.2版本在使用ajax时存在一个严重的bug问题,如果指定dataType为json,竟然死活不进入success回调函数,而其他版本,如1.2.6是正常的,郁闷~
 
  其实不是bug,下载的API文档没有详细说明,导致以为是bug,说明参考最下面的文章。

示例代码如下
ajax请求的页面,test.asp
+展开
-HTML
<%
response.write?"{success:false,id:'"&request("id")&"'}"
%>



最新的jQuery1.4.2,返回类型为json时,不进入success函数
+展开
-HTML
<script type="text/javascript" src="jquery-1.4.2.min.js">script
<script type="text/javascript">
$.ajax({
  url: 'test.asp',
  type: 'GET',
  dataType:'json',//指定为json,死活不进入success函数,而是执行了error回调,但是xhr的状态确实200没有发生错误
  data:{id:1},
  success:function(v){alert(v)},
  success:function(){alert('发生错误')},
  complete: function(r) {
    if(r.status == 200)alert('有效');
    else alert('无效');
  }
});  
script


版本为1.2.6,正常返回,能执行success回调,而不是执行error回调
+展开
-HTML
<script type="text/javascript" src="jquery-1.4.2.min.js">script> 
<script type="text/javascript">
$.ajax({
  url: 
'test.asp',
  type: 
'GET',
  dataType:
'json',//指定为json
  data:{id:1},
  success:
function(v){alert(v)},
  success:
function(){alert('发生错误')},
  complete: 
function(r) {
    
if(r.status == 200)alert('有效');
    
else alert('无效');
  }
});  
script> 
 
参考文章

加支付宝好友偷能量挖...


原创文章,转载请注明出处:jQuery1.4.2 ajax存在一个严重bug问题

评论(1)Web开发网
阅读(428)喜欢(0)JavaScript/Ajax开发技巧