我正在进行ajax调用并返回一个json数据数组。然后我尝试在对象上执行每个操作并创建一些HTML。
success: function (data) {
var abc = null;
var obj = $.parseJSON(data);
$.each(obj, function(key, value) {
abc += '<option value="' + key + '">' + value + '</option>';
});
}
当我将变量abc放在控制台中时,在.each函数中,我可以看到输出。但是,当我尝试从.each函数外部访问变量abc时,我收到一条错误消息Uncaught ReferenceError:abc未定义
答案 0 :(得分:1)
Uncaught ReferenceError: abc is not defined
- 因为错误说变量abc
无法从访问它的位置访问。
我认为您正在访问abc
外部成功回调,但abc
的范围在回调中,因为它是在回调中定义的。如果要访问回调之外的变量,可以将var声明移到外面。
另外,您应该将其定义为var abc = ""
而不是null
。定义null
将返回一个结尾为null的结束字符串。