Javascript 选中复选框时禁用selectize下拉列表

Javascript 选中复选框时禁用selectize下拉列表,javascript,jquery,selectize.js,Javascript,Jquery,Selectize.js,我已经在我的HTML表单上实现了。但是,只有单击“启用”复选框时,下拉列表才会激活。我知道Selectize对象上有一个disable属性,但我不知道在单击复选框时如何使用它 我已尝试将disabled类添加到Selectizediv元素,但这也不起作用。 任何帮助都将不胜感激 谢谢你的设置有点奇怪。这是对我有用的 var select = $("#YourDropDownId").selectize(); var selectize = select[0].selectize; selecti

我已经在我的HTML表单上实现了。但是,只有单击“启用”复选框时,下拉列表才会激活。我知道Selectize对象上有一个
disable
属性,但我不知道在单击复选框时如何使用它

我已尝试将
disabled
类添加到Selectize
div
元素,但这也不起作用。
任何帮助都将不胜感激


谢谢

你的设置有点奇怪。这是对我有用的

var select = $("#YourDropDownId").selectize();
var selectize = select[0].selectize;
selectize.disable();

我想在这里添加一个额外的答案,因为尽管@tclark333的答案是正确的,但这有点误导,因为第一行是selectize对象的实际初始化,而不是答案所需的内容

当您从jQuery对象访问基础元素上的selectize属性时,selectize API就会公开,而不是作为jQuery本身的扩展

假设已选择的元素的ID为“myDropDown”:


如果父级为只读,则此方法将自动锁定的类放入每个selectize(使用您自己的逻辑将只读置于select)

之后,您可以使用此css自定义选择

选择[只读]{
指针事件:无;
背景色:#e9ecef;
}
。选择ize-input.items.full.has-options.has-items.locked{
背景色:#e9ecef;
}
结果:

//disable
$('#myDropDown')[0].selectize.disable();
//re-enable
$('#myDropDown')[0].selectize.enable(); 
function generateCircle(id , jPath){
        var formId =$("#"+id).closest(".data_details_accord").find("form");
        var select = formId.find("select");
        /*disable select initially*/ 
        select.each(function(){
            var thisSelect = $(this).selectize();
            thisSelectDisable = thisSelect[0].selectize;
            thisSelectDisable.disable();
        });

        /***********/ 

        $.ajax({
            url: jPath,
            data:formVlaz,
            success: function(result){

            },error: function (xhr , status, eror) {
            },complete: function (xhr) {

                /*enable select when ajax complete*/ 
                    select.each(function(){
                        var thisSelect = $(this).selectize();
                        thisSelectDisable = thisSelect[0].selectize;
                        thisSelectDisable.enable();
                    });

                /********/ 
            }
        });
    };
$('.custom-select-2').each(function(){
    $(this).selectize({
         create: true,
         sortField: {
             field: 'text',
             direction: 'desc'
         }
    });
    if ($(this).is('[readonly]')) {
        $(this)[0].selectize.lock();
    }
})