希望我正确解释这一点,我有一个很长的预定义项目列表(我的数据库中的产品),我希望用户能够键入并自动完成产品,但是如果该产品/单词不在列表,我不想允许输入其他字符。因此,如果列表中不存在该输入,则自动完成将理想地阻止附加输入。
当前的jQuery UI / jQuery插件是否存在类似的内容?还是有mods?我希望使用此方法来加速产品选择,但如果有人输入其他内容,则不会返回“未找到”页面。
提前谢谢你:)
答案 0 :(得分:1)
This AutoComplete plugin有一个函数,允许您测试该值以确保它在列表中。
答案 1 :(得分:0)
你有类似的问题。芽没有导致使用下拉列表和/或组合框(它不完全支持)我决定使用更改事件选项自动完成,如下所示:
jQuery('#field').autocomplete ({
...
source: listOfValues, // assuming an array like this ['val1', 'val2', val3' ... ]
change: function (event, ui) {
// check if entered value exists
var entered_valid_input = false; // false until proven true
jQuery.each(listOfValues, function(i,v) {
if(jQuery('#field').val() == v) {
entered_valid_input = true;
return false; // stop iterating
}
});
if(!entered_valid_input) {
// blank the field
jQuery('#field').val("");
return; // exit callback. No further processing
}
},
...
// further processing if the input is valid
});
似乎对我有用。即使它不是最优雅的解决方案。