欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jquery中ajax请求后台数据成功后既不执行success也不执行error的完美解决方法

程序员文章站 2022-05-21 07:54:23
jquery中ajax请求后台数据成功后既不执行success也不执行error,此外系统报错:uncaught syntaxerror: unexpected ident...

jquery中ajax请求后台数据成功后既不执行success也不执行error,此外系统报错:uncaught syntaxerror: unexpected identifier at object.success,但后台能够返回数据,原代码如下:

 var source=[];
$.ajax({   
  type: "post",   
  url: "connectdb/select.jsp",    
  data: {database: "scmdb", selectsql: sql}, 
  async: false, method: 'post',  
  datatype: "json", 
  success: function(data) {   
    eval("source="+data+";");
    //source=eval(data); 
    alert("正确");
  },
  error: function(err) {  
    alert("错误");   
  }
});
return source;  

主要原因在于后台返回的数据并非json格式,而在代码中指定了 datatype: "json", 解决方法是将 json改为text,修改后的代码如下:

 var source=[];
$.ajax({   
  type: "post",   
  url: "connectdb/select.jsp",    
  data: {database: "scmdb", selectsql: sql}, 
  async: false, method: 'post',  
  datatype: "text", 
  success: function(data) {   
    eval("source="+data+";");
    //source=eval(data); 
    alert("正确");
  },
  error: function(err) {  
    alert("错误");   
  }
});
return source; 

总结

以上所述是小编给大家介绍的jquery中ajax请求后台数据成功后既不执行success也不执行error解决方法,希望对大家有所帮助!