将Ajax回调数据保存到一个不同步的变量中
Save Ajax callback data into a variable w/o it being synchronous
在进行AJAX调用时,我使用了通常的回调方法。但是,我有一种情况,我需要将回调的成功数据存储到一个变量中,但是当我尝试检索数据时,它显示为空。谁能告诉我我哪里错了?提前感谢!
function getData(url, callback){
$.ajax({
type: 'GET',
url: url,
success: callback
});
};
var storeThedata = (function(){
function theData(){
var newdata = null;
getData('someurl.json', function(data){
newdata = data; // newdata now isn't null woo!
});
return newdata;
}
return {
getTheData: theData
}
})();
var stored = storeThedata.getTheData();
console.log(stored); // Shouldn't be null
为什么不使用Ajax响应调用,也许你想要这样的东西
$(document).ready( function(){
$.ajax({
type : 'POST',
url : 'copycon.php',
success : function(data){
if(data=='saved')
{
alert("saved");
console.log(data);
}
else
alert("not save");
console.log(data);
},
error : function(XMLHttpRequest, textStatus, errorThrown)
{alert ("Error Occured");}
});
});
相关文章:
- Chrome扩展和Angular:我可以把Chrome.runtime.sendMessage变成一个同步函数吗
- 浏览器同步摄像头加速视频播放不是一个功能
- 同步函数调用涉及post-json调用,其中一个函数应该在另一个函数成功后成功
- 将异步 API 转换为同步 API.(我保证有一个很好的理由)
- 创建一个自动与服务器cordova javascript同步数据的应用程序
- 一个 Gulp 任务中的多个同步流
- 你怎么知道一个函数在node.js中是异步的还是同步的
- jQuery填充的日期选择器有一个月不同步
- 隐藏和显示与另一个元素同步的元素
- 创建一个带有与电影同步的标记的javascript图
- Sencha ExtJS 4.2:如何在一个网格中同步两个组合编辑器
- 在另一个方法的帮助下同步脚本方法
- 每隔几秒钟更改一个元素并与动画同步
- 两个同步事件创建了一个无限循环
- 在使用Q' deferred/promise时组合一个同步函数
- 对一个巨大的数组进行并行或同步迭代会更快吗?
- 如何在requirejs中声明一个模块已经被同步加载
- 我如何做一个同步的ReactDOM.render
- RTCDataChannel send()是一个同步/阻塞调用吗?
- dispatchEvent是一个同步函数还是一个异步函数?