我将bootstrap-select用作过滤器类型multi_select的custom_select选项,并使用yadcf进行选择。两者均显示正常并且正在初始化,但是单击select或multi_select时,下拉菜单不会切换打开或关闭状态。我可以看到下拉菜单中有一些选项,因为我将其设置为“ selectAll”。参见here
请参见下面的代码:
var _bootstrapselect;
yadcf.initSelectPluginCustomTriggers(
function ($filterSelector) {
_bootstrapselect = $filterSelector.selectpicker({
});
_bootstrapselect.selectpicker('selectAll');
},
function ($filterSelector) {
_bootstrapselect.selectpicker('refresh');
},
function ($filterSelector) {
_bootstrapselect.selectpicker('destroy');
});
yadcf.init(table, [
{
column_number: 0,
filter_container_id: 'external_filter_container_0',
filter_type: 'multi_select',
select_type: 'custom_select',
style_class: 'form-control selectpicker',
filter_default_label: 'Filter Column',
filter_reset_button_text: false,
}
]);
我没有控制台错误,所以好像我的boostrap js和bootstrap css文件以正确的顺序加载。我还成功在yadcf外部设置了bootstrap-select,并且工作正常。任何帮助将不胜感激。
答案 0 :(得分:1)
我能够解决bootstrap-select和yadcf的所有问题。不要使用nuget软件包管理器来下载bootstrap-select。这就是问题所在。使用链接here中的CDNJS。另外,将脚本链接放在引导程序,数据表和yadcf脚本之后的底部。
最终密码:
var _bootstrapselect;
yadcf.initSelectPluginCustomTriggers(
function ($filterSelector) {
_bootstrapselect = $filterSelector.selectpicker({});
},
function ($filterSelector) {
_bootstrapselect.selectpicker('refresh');
},
function ($filterSelector) {
_bootstrapselect.selectpicker('destroy');
}
);
yadcf.init(table, [
{
column_number: 0,
filter_container_id: 'external_filter_container_0',
filter_type: 'multi_select',
select_type: 'custom_select',
style_class: 'form-control selectpicker',
filter_default_label: 'Filter Column',
filter_reset_button_text: false,
}
]);