0

我正在为我的多选下拉菜单使用多选插件。这是代码:

$('#crew_id_1').multiselect({
    includeSelectAllOption: true,
    enableFiltering: true,
    maxHeight: 150
});

加载 html 时,会动态加载 #crew_id_1。当我单击“添加更多”按钮时,会添加更多下拉列表#crew_id_2, #crew_id_3, ...........,依此类推。

我希望每个 id 开头的选择元素crew_id_都应该初始化多选。

所以我像这样初始化下拉列表:-

$('[id^="crew_id_"]').multiselect({
    includeSelectAllOption: true,
    enableFiltering: true,
    maxHeight: 150
});

现在我什至希望动态创建的下拉菜单也被初始化。所以我将代码更改为:-

$(document).on('focus', '[id^="crew_id_"]', function(){
    $(this).multiselect({
        includeSelectAllOption: true,
        enableFiltering: true,
        maxHeight: 150
    });
});

但是,问题在于下拉菜单仅在将焦点设置在它们上时才被初始化。我想要任何其他事件(任何非鼠标操作事件,如“加载”),以便在没有任何点击或焦点的情况下对其进行初始化。

这是因为 multiselect() 为下拉菜单提供了不同的外观。如果我使用“焦点”,那么在将焦点设置在它们上之前,它们的外观不会改变。

4

0 回答 0