Javascript 使用对象的for in-loop填充下拉列表
我有一个目标Javascript 使用对象的for in-loop填充下拉列表,javascript,Javascript,我有一个目标 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 undfin
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);
}
因为在似乎是一条路要走,但我试图做的关键和价值,而不仅仅是价值。这将允许我将第一个下拉选项的键设置为3,第二个下拉选项的键设置为6。这有点让人困惑,但是
项实际上持有当前属性的键,而不是实际属性本身。使用myObject[item]
将解决此问题。在for(myObject中的var item)
中,item
是键,值将位于myObject[item]
。因此:
for (var item in myObject ) {
var option = document.createElement("option");
option.text = myObject[item];
option.value = item;
statusDropdown.options.add(option);
}
for循环中的代码应该是这样的
option.text = myObject[item];
option.value = item;