我有一个JSON返回下拉值(值和文本)。我需要将这些数据加载到我的下拉列表中。我不知道如何将这些数据加载到下拉列表中。请告诉我可能性。
代码
$('#SupplierId').change(function () {
var a = $(this).val();
$.post('@Url.Action("MatchPoNo", "Subscriptions")', { Id: a }, function (data) {
$("#PoNo").select2({
});
});
});
答案 0 :(得分:2)
我没有对此进行测试,但回调中的类似内容应该可以正常工作。这假设您正在返回一个javascript数组。
data.each(function(){
$option = $("<option></option>");
$option.val(this.value);
$option.html(this.text);
$('#dropdown').append($option);
});
答案 1 :(得分:1)
尝试将起作用:
var data = [
{val: 1, text: "One"},
{val: 2, text: "Two"},
];
$("#PoNo").append(function() {
return $.map(data, function(el, i) {
return '<option value=' + el.val + '>' + el.text + '</option>';
// return $('<option>', {val: el.val, text: el.text});
});
});
然而,如果您发布了json的示例,那就太好了。
答案 2 :(得分:0)
最简单的方法是使用JQuery view engine并将数组加载到下拉列表中:
var data = [
{"text":"North","value":"N"},
{"text":"West","value":"W"},
{"text":"South","value":"S","selected":true},
{"text":"East","value":"E"}
];
$("#dropdown").view(data);
请在此处查看详细信息:https://jocapc.github.io/jquery-view-engine/docs/ajax-dropdown