在selectize js中,旧数据不会被新数据替换

时间:2017-11-15 07:04:17

标签: javascript jquery ajax selectize.js

我正在使用 ajax和selectize js 。根据下拉菜单的值,我想在选择框中填写动态数据。我写了一个ajax调用。当我第一次更改下拉菜单 时,数据会在选择框中加载,很好。但是当再次更改下拉菜单时,选择框的数据不会动态更改。 我第一次选择的数据始终显示在那里。控制台根据下拉值显示数据动态。但没有分配给选择框。

$('.branchName').bind("change", function() {    

    $.ajax({
        type : "GET",
        url : "${listRestBranches}", //URL
        data : {'branchId':branchVal}, //value
        contentType : "application/json; charset=utf-8",
        cache : true,
        success : function(getRestDept) {

            console.log(JSON.stringify(getRestDept)) // getting dynamic results accroding to drop-down bind

            var $select = $('#select-rest-department').selectize({
                        plugins: ['remove_button'],
                        maxItems: null,
                        valueField: 'departmentId',
                        labelField: 'departmentName',
                        searchField: 'departmentName',
                        options: getRestDept,
                        create: false
                    });
             var control = $select[0].selectize;
                 control.clear();       
        },
        error : function(data) {
            console.log(data)

        }

    })
})

我觉得很难解决这个问题,我使用在线参考,但我无法做到。提前致谢

1 个答案:

答案 0 :(得分:1)

console.log()下试试这个。你必须销毁旧数据。所以你可以使用这个

$('#select-rest-department').selectize()[0].selectize.destroy();