jQuery自动完成检测空输入

时间:2021-01-26 21:03:53

标签: javascript jquery

我正在使用 jQuery 自动完成功能,但遇到了未检测到它为空的问题。

$("#autocomplete").on("autocompleteopen", function() {
    if (!$(this).val()) {
      console.log("I am empty");
    } else {
      console.log("I am not empty");
    }

输入一开始是空的,如果我输入字母 t,我会看到 I am not empty 打印到控制台。如果我从输入中删除 t,我看不到任何打印到控制台的内容。

如果我输入 test 并退格最后一个 t 我看到我不是空的。因此,autocompleteopen 事件侦听器没有问题。任何想法可能会发生什么?

1 个答案:

答案 0 :(得分:0)

对于所有未来的 Google 员工来说,问题出在我的自动完成对象中。为了检测零长度,您必须将 minLength 属性设置为零。请参阅下面的示例。

$("#autocomplete").autocomplete({
    minLength: 0,
    ...
})

https://api.jqueryui.com/autocomplete/#option-minLength