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相干学问,请接见ki4网!
以上就是ajax猎取不到php返回值的细致内容,更多请关注ki4网别的相干文章!