我想覆盖status
来自 ajax 调用的变量..我尝试了这种方式,但它没有覆盖 status
变量...请帮助我。
function myfunction()
{
var status = "";
$.ajax({
type: 'POST',
url: "<?php echo base_url() ?>login/ajaxsessioncheck/",
success: function(data)
{
status="new value";
}
});
alert(status)
return status;
}
最佳答案
一个可能的解决方案可能是这样的,
function ajaxsessioncheck(myCallback)
{
var status = "";
$.ajax({
type: 'POST',
url: "<?php echo base_url() ?>login/ajaxsessioncheck/",
success: function(data)
{
//status="new value";
myCallback(data);
}
});
// alert(status)
// return status;
}
所以你可能想做的是,
if(ajaxsessioncheck()){
//then session still exists
}
但你实际上应该做类似的事情,
ajaxsessioncheck(function(data){
status = "new value";
alert(status);
//go to next page
//or do next action that is only allowed if session still exists
});
还有 Arun P Johny 的评论中提到的线程,How do I return the response from an asynchronous call? ,全面解释了如何解决这个特定问题以及与 ajax 请求的同步和异步行为相关的问题。
关于javascript - 覆盖ajax调用中的javascript变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22129474/