如何使用jquery在选择框选项中显示数据

时间:2016-05-30 09:07:43

标签: javascript jquery arrays json ajax

我想在ajax response中的select box选项中显示数据。

这是我的视图文件

<select class="form-control" name="vendor" id="vendor_list" required style="width: 159px;">
<option value="">Vendor 1</option>
</select>

这是我的ajax成功函数

success: function(data) {
    $.each(data, function(i, value) {
        console.log(value);
        $('#vendor_list').append('<option value="'+ value.id+'">'+ value.vendor_name +'</option>');
        console.log(value);
    });
}

这是我的ajax响应json数据

[{"vendor_name":"scscss"},{"vendor_name":"xzcdsfdx"}]

如何在选择框中显示值。 给我一个建议。谢谢

1 个答案:

答案 0 :(得分:3)

我认为问题在于

$('#vendor_list').append('<option value="'+ value.id+'">'+ value.vendor_name +'</option>');

如果你创建一个选项字符串&amp;在整个data被迭代后附加它

由于无法复制ajax,所以我直接使用了ajax响应

您可以将整个代码放入成功功能块中,但不需要var x,因为data将在您的案例中扮演var x=[...]的角色

var x = [{"vendor_name":"scscss"},{"vendor_name":"xzcdsfdx"}]
var _options =""
$.each(x, function(i, value) {
        _options +=('<option value="'+ value.id+'">'+ value.vendor_name +'</option>');
    });
$('#vendor_list').append(_options);

选中此jsFiddle