Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我需要使用一个键值对对象向select元素添加一个选项下拉列表_Javascript_Jquery_Html - Fatal编程技术网

Javascript 我需要使用一个键值对对象向select元素添加一个选项下拉列表

Javascript 我需要使用一个键值对对象向select元素添加一个选项下拉列表,javascript,jquery,html,Javascript,Jquery,Html,这就是对象的外观: 0: {Key: "1", Value: "cat1"} 1: {Key: "2", Value: "cat2"} 2: {Key: "3", Value: "cat3"} 3: {Key: "4", Value: "cat4"} 4: {Key: "5", Value: "cat5"} HTML: 我需要向这个select元素添加下拉选项,该元素的值为attrib=object.key,内部文本为=object.value 我想要这种格式的。 对象。值 我已经尝试将app

这就是对象的外观:

0: {Key: "1", Value: "cat1"}
1: {Key: "2", Value: "cat2"}
2: {Key: "3", Value: "cat3"}
3: {Key: "4", Value: "cat4"}
4: {Key: "5", Value: "cat5"}
HTML:

我需要向这个select元素添加下拉选项,该元素的值为attrib=object.key,内部文本为=object.value

我想要这种格式的。 对象。值

我已经尝试将append添加到元素中,但它似乎不起作用

更新:问题显然不是我的代码附加了一个新的dropddown列表,而是我没有对我的select元素执行.selectpickerrefresh。它修复了显示器的问题

使用一些javascript:

var obj = [ {Key: "1", Value: "cat1"},
 {Key: "2", Value: "cat2"},
 {Key: "3", Value: "cat3"},
 {Key: "4", Value: "cat4"},
 {Key: "5", Value: "cat5"}]

for (var i = 0; i < obj.length; i++){
  document.getElementById("edit-category-dropdown").innerHTML +=
"<option value='" + obj[i].Key + "'>" + obj[i].Value + "</option>";

}

使甜蜜和简单。我只编写了一个基本的Javascript for循环方法。试试这个,我希望它能帮你。谢谢

变量数组=[ {键:1,值:cat1}, {键:2,值:cat2}, {键:3,值:cat3}, {键:4,值:cat4}, {键:5,值:cat5} ] var modelList=document.getElementByIdedit-category-dropdown; 中频阵列{ var i; 对于i=0;i我能让它工作。我能够让它与我以前的代码一起工作。我只是没有意识到,因为它没有显示。然而,问题是bootsrap select的引导版本。它似乎不想显示我的下拉选项。当我将class=selectpicker从属性中移除时,它只显示一个我不想要的选项列表,而我更喜欢一个下拉列表。如果这有道理的话。
var obj = [ {Key: "1", Value: "cat1"},
 {Key: "2", Value: "cat2"},
 {Key: "3", Value: "cat3"},
 {Key: "4", Value: "cat4"},
 {Key: "5", Value: "cat5"}]

for (var i = 0; i < obj.length; i++){
  document.getElementById("edit-category-dropdown").innerHTML +=
"<option value='" + obj[i].Key + "'>" + obj[i].Value + "</option>";

}
$(availableOptions).each(function(_,item){
$('#edit-category-dropdown').append($('<option>', { value: item.Key, text: item.Value }));
$("#edit-category-dropdown").selectpicker("refresh");
});
```
I was able to figure it out. Seems like I just need to include .selectpicker to refresh it.