ajax请求mysql数据时不执行success

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;

  

版权声明:本文为sumyn原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/sumyn/p/8093050.html