首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用post返回的数据(jquery)

如何使用post返回的数据(jquery)
EN

Stack Overflow用户
提问于 2016-12-16 15:58:14
回答 1查看 81关注 0票数 0

重复的问题告诉我们如何使用ajax/post调用。我的问题是如何使用匿名函数返回的数据。

我正在使用jquery方法从mysql获取一些数据。号召是:

代码语言:javascript
复制
$.post("/php/practice.php",{cat:catname}, function(xdata) {
    qdata=JSON.parse(xdata);
});

这很好,我得到了我所需要的数组,qdata。

因此,如果我执行以下操作,就可以访问qdata:

代码语言:javascript
复制
$.post("/php/practice.php",{cat:catname}, function(xdata) {
    qdata=JSON.parse(xdata);
    alert(qdata[0][0]);
});

qdata是一个有140行的二维数组,所有的值都在那里。

但是如果我试图在这篇文章之外使用qdata,那么qdata就会被称为“未定义的”。例如

代码语言:javascript
复制
$.post("/php/practice.php",{cat:catname}, function(xdata) {
    qdata=JSON.parse(xdata);
});
alert(qdata[0][0]);

如果我把警报放在邮局的电话外面,我什么也得不到。

我该如何解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-16 16:06:28

您的问题是qdata只存在于函数的作用域中。

在函数之外安装qdata变量。

var qdata

代码语言:javascript
复制
$.post("/php/practice.php",{cat:catname}, function(xdata) {
        qdata=JSON.parse(xdata);
});

或者,假设您希望将这些数据传递给另一个函数,该函数使用它执行某些操作。你可以这样做:

代码语言:javascript
复制
$.post("/php/practice.php",{cat:catname}, function(xdata) {
        qdata=JSON.parse(xdata);
        myFunction(qdata);
});

function myFunction(data){
 alert(data[0]);
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41188099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档