Ajax ne peut pas obtenir la solution de valeur de retour php :
1. Vérifiez d'abord si ajax l'est. est asynchrone. L'asynchronie ne peut pas renvoyer directement le résultat.
/*常见错误示例 直接在 ajax 里面return 结果*/ function demo(){ $.ajax({ url : 'test.do', type : "post", data : {}, async : false, success : function(data) { return 2; } }); }/* 结果 无返回 */
2. Assurez-vous ensuite qu'ajax ne renvoie pas de données dans la fonction imbriquée. La fonction qui appelle ajax doit renvoyer les données.
/** * (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. Il peut fonctionner normalement. Cependant, changer ajax en requête synchrone entraînera un blocage ; ajax nécessite une requête asynchrone.
/** * 添加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 })
Remarque : Le php demandé par ajax nécessite des données d'écho ou d'impression, sinon ajax ne pourra pas obtenir les données.
Pour plus de connaissances sur PHP, veuillez visiter le Site Web PHP chinois !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!