未捕获的TypeError: Cannot read property 'add'零

Uncaught TypeError: Cannot read property 'add' of null

本文关键字:property add read Cannot TypeError      更新时间:2023-09-26

我一直试图在我正在构建的web应用程序中实现这段javascript。它应该从json文件中提取数据,然后在选择器标记中使用名称创建选项。在我的控制台中,我首先记录了第一条数据。行"selector.add(option);"然后返回"Uncaught TypeError: Cannot read property 'add' 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);
                        };
                });
            });
     });
 });

请注意,selectoroption变量是DOM元素,但您将它们都视为jQuery集合。考虑使用以下语句:

    if (key3 == "name"){
        var selector = $("#in");
        var option = $("option") 
        option.text( val3 );
        option.val( val3 );
        console.log(option);
        selector.add(option);
    }