有没有办法让搜索框保持禁用状态,但仍然让下拉菜单选择按键上的一个选项,这是启用搜索时的默认行为?
$(element).chosen({ disable_search: true });
我尝试使用以下方法启用搜索并隐藏搜索框(没有运气):
$('ul.chosen-choices li.search-field').hide();
似乎需要显示该搜索才能使按键像正常选择一样工作。有没有人有运气?提前致谢!
有没有办法让搜索框保持禁用状态,但仍然让下拉菜单选择按键上的一个选项,这是启用搜索时的默认行为?
$(element).chosen({ disable_search: true });
我尝试使用以下方法启用搜索并隐藏搜索框(没有运气):
$('ul.chosen-choices li.search-field').hide();
似乎需要显示该搜索才能使按键像正常选择一样工作。有没有人有运气?提前致谢!
这对我有用,但是它需要对特殊字符处理进行一些调整:
var originalObjectSelector = "select#yourSelectId";
var $container = $(originalObjectSelector).data("chosen").container
var $orig=$(originalObjectSelector);
$container.bind("keypress", function(event){
var charCode = event.charCode;
var keyCode = event.keyCode;
var character = String.fromCharCode(charCode);
//console.log("kc:", keyCode, "cc", charCode, "char:", character);
//console.log(event);
if(keyCode==13){
//enter is pressed;
$orig.trigger('change');
}
if(charCode != 0 && character.match(/^[-_ a-zA-Z0-9]+$/))
{
//console.log('alphanumeric or space');
$orig.find("option").removeAttr("selected")
.filter(function() { return $(this).text().toLowerCase().indexOf(character.toLowerCase()) === 0; })
.first().attr("selected", "selected");
$orig.trigger('chosen:updated');
}
});