如何使用从jQuery的POST或GET方法返回的函数之外的数据?
我的问题是我通过jquery post方法获取一些数据..问题是,每当我获取数据时,我就能够在函数内部使用它,而实际上我希望该数据在函数外部使用。它不起作用...
function getlatlanfromjs() {
$(document).ready(function() {
var uid = $(".track_textbox").val();
$.post("getLatLan.php", {userid: uid}, function(data) {
var i;
for (i = 1; i < 2; i++) {
initialize(data[i]["latitude"], data[i]["longitude"]);
}
}, "json");
alert(data[1]["latitude"]); //this is actually not alerting.. what is the reason ?
});
}
最佳答案
因为此时数据变量超出范围。下面的代码会将数据分配给本地recievedData,您可以在处理函数范围之外使用它。虽然您仍然只能在请求完成后才能访问recievedData变量。
$(document).ready(function() {
var recievedData;
var uid = $(".track_textbox").val();
var promise = $.post("getLatLan.php", {userid: uid}, function(data) {
recievedData = data;
var i;
for (i = 1; i < 2; i++) {
initialize(data[i]["latitude"], data[i]["longitude"]);
}
}, "json");
promise.done(function() {
alert(recievedData[1]["latitude"]); });
});
关于javascript - 如何使用从jQuery的POST或GET方法返回的函数之外的数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23069584/