我花了一个小时试图使这个jsfiddle出色的selectify修改停止对选项选择的关闭(stopPropagation),但是我现在感到无助。我是否必须为此使用某些selectize选项?我已经阅读了文档,但没有发现任何相关内容。唯一相关的选项似乎是closeAfterSelect,但是其默认值为false :(有什么想法吗?
$('.dropdown').each(function() {
$_self = $(this);
$_self.find('select')
.selectize({ plugins: ['component'], maxItems: 1, closeAfterSelect:false })
.on('change', function() {
console.log('Changed value to:', $(this).val() )
$_self.find('span.value').text( $(this).val() )
if ($(this).val()) {
$_self.removeClass('open');
}
});
$_self.find('select').on('click', function(e) { e.stopPropagation(); });
$_self.find('.dropdown-menu').on('click', function(e) { e.stopPropagation(); });
$_self.find('.dropdown').on('click', function(e) { e.stopPropagation(); })
});
再次澄清-我希望下拉菜单仅在按下插入符号时关闭。如果我选择任何选项,则希望它保持打开状态。您可能会注意到,我在可能的每个类和元素上添加了stopPropagation方法,但仍无法按预期工作
问题是e.stopPropagation()执行得太早了,因此无法执行任何操作。但是您可能会return false
发生变化事件:
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句