【发布时间】:2023-03-10 16:25:01
【问题描述】:
我正在尝试在下面的代码中为变量val 赋值:
var cmdValue = "/cmd/fetch?x=";
var val;
var returned_data;
function what(){
val = update('#TAG#');
}
function update(tag) {
var req1 = newXMLHttpRequest();
req1.open("GET",cmdValue + tag, true);
req1.send("");
return req1.onreadystatechange= function () {
if (req1.readyState == 4 && req1.status == 200) {
returned_data = req1.responseText;
return returned_data;
}else{
}
};
}
我在 Firebug 中跟踪变量,结果发现 val 被分配了函数。有没有办法让代码运行,然后将值分配给变量val?
【问题讨论】:
-
因为
val是一个全局变量(现在不太推荐),你可以这样做var = returned_data; -
我将 val 保留为全局变量,以便在 firebug 中跟踪它。你的意思是 val=returned_data 吗?
-
是的,对不起,我的意思是
val = returned_data -
ajax 请求是否在通过其余代码之前等待响应。如果没有,那么您的建议将不起作用。
标签: javascript jquery ajax