你好,我有这个代码
var temp;
if(method==1)
temp = $("#Words").val(); //get the words from textbox
else{
$.getJSON("http://localhost/mine/test.js", function(data) {
temp=data.Words;
});
}
//do something with temp...but temp is undefined after the execution of else
但执行getJson后temp未定义...如果我发出警告(temp)它会继续下去吗?我如何才能继续使用temp的值?
提前感谢!
答案 0 :(得分:3)
这是因为getJSON是ajax请求,而不是同步。试试这个
var temp;
if(method==1) {
temp = $("#Words").val(); //get the words from textbox
proc(temp);
} else {
$.getJSON("http://localhost/mine/test.js", function(data) {
temp=data.Words;
proc(temp);
});
}
function proc(data){
//do something with temp...but temp is undefined after the execution of else
}
答案 1 :(得分:0)
您正在为$.getJSON()
函数提供回调函数。在请求完成之前,这不会执行。