我有一个对象
var myObject = { 3: 'Three', 6: 'Six'};
我想在下拉列表中填充这些值,如下所示:
var statusDropdown = document.createElement('select');
for (var item in myObject ) {
var option = document.createElement("option");
option.text = item.value; //this is undfined item = "Three", or "Six"
option.value = item.key; //this is undfined item = "Three", or "Six"
statusDropdown.options.add(option);
}
对于in似乎要走了,但我正在努力做关键和价值而不仅仅是价值。这样我就可以将第一个下拉选项的键设置为3,第二个
设置为6答案 0 :(得分:1)
这有点令人困惑,但item
实际上将键保存到当前属性,而不是实际属性本身。使用myObject[item]
可以解决问题。
答案 1 :(得分:1)
在for (var item in myObject )
中,item
是关键,值将在myObject[item]
。所以:
for (var item in myObject ) {
var option = document.createElement("option");
option.text = myObject[item];
option.value = item;
statusDropdown.options.add(option);
}
答案 2 :(得分:0)
for循环中的代码应该是这样的。
option.text = myObject[item];
option.value = item;