我有这个由json返回的数组。
{1:Android, 2:IOS, 3:Business Management Systems, 4:Database, 5:Codes/Scripts, 6:Others}
或
1: "Android"
2: "IOS"
3: "Business Management Systems"
4: "Database"
5: "Codes/Scripts"
6: "Others"
此数组保存在变量data
上。我目前的ajax
代码是:
$.post('fetchSubCategory',{val:val},function(data){
var subCategory = $.map(data, function(el){
return el;
});
$.each(subCategory, function(key, value) {
$('#subCategory')
.find('option')
.remove()
.end()
.append($('<option>', { value : key })
.text(value));
});
});
但它会返回[object Object]
。我希望这个数组填充我的select
元素,其值是那些id,文本是那些名称。有点像这样:
<select class="form-control square" id="subCategory" name="Category">
<option value="1">Android</option>
<option value="2">IOS</option>
<option value="3">Business Management Systems</option>
<option value="4">Database</option>
<option value="5">Codes/Scripts</option>
<option value="5">Others</option>
</select>
我如何才能在Javascript
或jquery
上实现这一目标。
答案 0 :(得分:1)
以下内容会将option
元素附加到现有的#subCategory
选择元素:
$.post('fetchSubCategory',{val:val},function(data){
$.each(data, function(key, value) {
$('#subCategory').append(
$('<option/>').val( key ).text( value )
);
});
});