我发布jQuery Ajax请求后得到的数据的格式为
[{"name":"Man","id":"1"},{"name":"SKC","id":"2"},{"name":"fsdfds","id":"3"},{"name":"ETA","id":"4"},{"name":"Star","id":"5"},{"name":"SCity ","id":"6"},{"name":"TESTGB","id":"11"}]
所以我需要以这样的方式拆分它:我得到一个下拉列表:
<select>
<option value="1">Man</option>
<option value="2">SKC</option>
.
.
.
</select>
我试过这个,但这会将数据拆分为空。
$.each(data, function (index, value) {
$('#bu_group').append($('<option/>', {
value: value,
text : value
}));
});
答案 0 :(得分:1)
试试这个
$.each(data, function (index, val) {
$('#bu_group').append($('<option/>', {
value: val.id,
text : val.name
}));
});
答案 1 :(得分:0)
你必须这样:
$.each(data, function (index, data) {
$('#bu_group').append($('<option/>', {
"value": data.id,
"text": data.name
}));
});
或者,另一种方式就是你希望值和文本都相同:
$.each(data, function (index, data) {
$('#bu_group').append($('<option/>', {
"value": data.name,
"text": data.name
}));
});
属性value
和值value
存在冲突。此外,您需要访问value
的内部成员,而不是value
本身。
答案 2 :(得分:0)
var yourArray = JSON.parse(data);
console.log(yourArray);
$.each(yourArray, function (index, yourArray) {
$('#builder_group').append($('<option/>', {
value: yourArray.id,
text : yourArray.name,
}));
});
这解决了我的问题