javascript - 在 minLength = 3 但只有数字时触发 jQuery UI 自动完成

标签 javascript jquery jquery-ui autocomplete

我有一个自动完成输入字段,我希望它搜索带有标签(文本)和 ID(整数)的对象。

自动完成功能必须允许用户在文本标签或 ID 上进行搜索。服务器部分没问题,但在客户端部分,当用户输入至少一个字母时,我想在 minLength=3 处触发搜索,但当只有数字时在第一个字符处触发搜索(如果没有,它会错过所有 id) <=99)。

代码:

$("#my_input").autocomplete({
    minLength : 1,
    delay:200,  source: function(request,response){ 
       ... 
} });

如果至少有 1 个字母,如何防止在少于 3 个字符时触发自动完成?

最佳答案

您可以使用search 属性在执行搜索之前添加其他检查。

 search: function( event, ui ) {
    var value = document.getElementById('my_input').value;

    // If not a number and less than three chars, cancel search.
    if(isNaN(value) && value.length < 3){   
      event.preventDefault();
    }

See a full working example here

关于javascript - 在 minLength = 3 但只有数字时触发 jQuery UI 自动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47650913/

相关文章:

javascript - Linq.js Enumerable.from()

javascript - Ramda 柯里化(Currying) : how to apply argument to multiple parameters

javascript - 这是什么日期格式 2013-07-03T15 :00:00Z?

jQuery - 在最后一个匹配的 div 之后点击添加新的 div

javascript - 从页面底部拖动时 jQuery UI 可排序问题

Javascript for 循环遍历 JSON 值

javascript - 同步 javascript 调用

jQuery:在未选择任何选择字段选项时隐藏元素(多个字段)

javascript - jquery定时器实现

javascript - JQuery slider : slide down the whole page