Ajax调用成功函数复制返回的json

时间:2016-02-03 04:31:59

标签: c# jquery json ajax asp.net-mvc

在此代码中,从控制器返回的json显示5个项目,但它在ajax调用成功函数中是重复的。

Html

 <select class="form-control  id="books">
 </select>

我的Ajax电话

  function LoadBooks(rackNo) {
    debugger;

    $.ajax({
        url: '@Url.Action("GetBookDetails", "Books")',
        type: "POST",
        async: false,
        data: JSON.stringify({ rackNo: rackNo }),
        dataType: "json",
        contentType: "application/json; charset=utf-8",

        success: function (_booklst) {
            debugger;

            console.log(_booklst);
                $('#books').empty();
                $.each(_booklst, function (index, item) {
                    $('#books').append($('<option><option/>').val(item.bookno).text(item.bookname));
                });

        }
    });

}

2 个答案:

答案 0 :(得分:2)

您需要更改

$.each(_booklst, function (index, item) {
    $('#books').append($('<option><option/>').val(item.bookno).text(item.bookname));
});

$.each(_booklst, function (index, item) {
    $('#books').append($('<option></option>').val(item.bookno).text(item.bookname));
});

/'<option></option>'的位置

答案 1 :(得分:0)

这是问题所在。使用

<select class="form-control" id="books"> </select>

而不是

 <select class="form-control  id="books">
 </select>