温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ajax获取不到php返回值的解决办法

发布时间:2020-10-14 16:32:21 来源:亿速云 阅读:332 作者:小新 栏目:编程语言

小编给大家分享一下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也是无法获取数据的。

以上是ajax获取不到php返回值的解决办法的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI