我一直在尝试在我正在构建的网络应用中实现这条javascript。它应该从json文件中提取数据,然后使用选择器标记中的名称创建选项。在我的控制台中,我首先记录了第一个数据。行" selector.add(选项);"然后返回" Uncaught TypeError:无法读取属性'添加' of null"。
我经历三层这样的原因是因为我在数组级别内访问数据,而且我不确定如何以更好的方式执行此操作。
有人知道出了什么问题吗?
$.getJSON( '../names.json', function( data ) {
$.each( data, function( key, val) {
$.each( val, function( key2, val2) {
$.each( val2, function( key3, val3) {
if (key3 == "name"){
var selector = document.getElementById("in");
var option = document.createElement("option")
option.text = val3;
option.value = val3;
console.log(option);
selector.add(option);
};
});
});
});
});
答案 0 :(得分:1)
请注意,selector
和option
变量是DOM元素,但您将它们视为jQuery集合。考虑使用以下内容:
if (key3 == "name"){
var selector = $("#in");
var option = $("option")
option.text( val3 );
option.val( val3 );
console.log(option);
selector.add(option);
}