ajax获取不到php返回值
ajax获取不到php返回值的解决办法:
1、首先检查ajax是否是异步,异步不可以直接return返回结果。
/*常见错误示例 直接在 ajax 里面return 结果*/ function demo(){ $.ajax({ url : 'test.do', type : "post", data : {}, async : false, success : function(data) { return 2; } }); }/* 结果 无返回 */
2、然后确保ajax不要在嵌套函数中返回数据,应该由调用ajax的函数进行返回数据。
/** * (1)同步调用 (2)且在ajax对全局变量进行设值 (3)ajax函数外将变量return * 结果:返回 2。成功获取返回值 * 成功原因:先执行result = 2;再往下执行return result; */ function demo1(){ var result = 1; $.ajax({ url : 'test.do', type : "post", data : {}, async : false, success : function(data) { result = 2; } }); return result; //2 }
3、可以正常运行了。但是,ajax 改为同步请求会导致阻塞;ajax需要进行异步请求。
/** * 添加async:true.即修改为异步 * 结果以callback的形式回调 */ function demo1(params,callback){ var result = 1; $.ajax({ url : 'test.do', type : "post", data : {"params ":params }, async : true, success : function(data) { result = 2; callback(result); } }); } demo1("Value",function(rs){ //do someting })
注意:ajax请求的php需要echo或print数据,否则ajax也是无法获取数据的。
更多PHP相关知识,请访问jquery中文网!
以上就是ajax获取不到php返回值的详细内容,更多请关注jQuery中文网其它相关文章!
您可能感兴趣的文章:
ajax获取不到php返回值
浅析jquery ajax异步调用方法中不能给全局变量赋值的原因及解决方法
AJAX在PHP中的简单使用
jquery中get,post和ajax方法的使用小结
AJAX 简介
js怎么通过ajax给php发送数据
jQuery AJAX 方法
PHP curl_multi_getcontent函数
php中ajax的使用实例讲解
php使用ajax示例