选择方框赢得';不能用javascript填充

选择方框赢得';不能用javascript填充,javascript,Javascript,我使用javascript在我的页面中填充一个选择框,但它不工作,选择框显示,但它完全为空 我的控制台中也没有错误 我的剧本是这样的: var select = document.createElement("select"); for(var i in resource){ if(i !== id && select.hasOwnProperty(i)){ selec

我使用javascript在我的页面中填充一个选择框,但它不工作,选择框显示,但它完全为空

我的控制台中也没有错误

我的剧本是这样的:

        var select = document.createElement("select");
            for(var i in resource){
                if(i !== id && select.hasOwnProperty(i)){
                    select.setAttribute(i, resource[i].name);
                }
            }
            d.appendChild(select);
资源的示例数据

{
 "1":{"name":"Test"},
 "2":{"name":"Test2"},
 "3":{"name":"Test3"}
}

关于为什么不填充它有什么想法吗?

您需要创建
select
的子元素,即
选项
标记


这是一个示例。

您需要创建
选择
的子元素,即
选项
标记


这是一个示例。

您的脚本中有很多错误,正如您所看到的,在注释中提到了很多错误

你要找的可能是这样的东西

var select = document.createElement("select");
for(var i in resource){
    if(resource.hasOwnProperty(i)){ //removed the i !== id condition, you may put it back
        var opt = new Option(resource[i].name, i);
        select.options[select.options.length] = opt;
    }
}
document.body.appendChild(select);

演示:

您的脚本中几乎没有错误,如您所见,注释中提到了许多错误

你要找的可能是这样的东西

var select = document.createElement("select");
for(var i in resource){
    if(resource.hasOwnProperty(i)){ //removed the i !== id condition, you may put it back
        var opt = new Option(resource[i].name, i);
        select.options[select.options.length] = opt;
    }
}
document.body.appendChild(select);


演示:

您希望它做什么?如果你想让这些选项出现在你的下拉列表中,你必须创建吗?“名称”和“类型”对应什么?这些只是我用来填充选择框的对象属性。嗯,不是类型-忽略对象的属性。好的,但是它们在下拉列表中对应什么。“name”是为列表中的每个选项显示的文本吗?是的,
i
将是诸如资源[1]等的对象,这是我认为setAttribute的目的。您希望它做什么?如果你想让这些选项出现在你的下拉列表中,你必须创建吗?“名称”和“类型”对应什么?这些只是我用来填充选择框的对象属性。嗯,不是类型-忽略对象的属性。好的,但是它们在下拉列表中对应什么。“name”是列表中每个选项显示的文本吗?是的,
i
将是诸如资源[1]等的对象,这是我认为setAttribute的目的。我想这一定是一个输入错误。。opt应该是
选项(资源[i].name,i)
第一个参数用于文本,第二个参数用于值@razzak是的,在小提琴中,它被更正了,忘了复制这里啊,我看到了,那么setAttribute什么时候可以用于任何东西?还应该提到不应该
资源。hasOwnProperty(i)
be
!resource.hasOwnProperty(i)
@ArunPJohny如果它有自己的属性,那么它应该跳过而不是再次创建它。我想这一定是一个打字错误。。opt应该是
选项(资源[i].name,i)
第一个参数用于文本,第二个参数用于值@razzak是的,在小提琴中,它被更正了,忘了复制这里啊,我看到了,那么setAttribute什么时候可以用于任何东西?还应该提到不应该
资源。hasOwnProperty(i)
be
!resource.hasOwnProperty(i)
@ArunPJohny如果它有自己的属性,那么它应该跳过而不是重新创建?