【问题标题】:How to trigger autocomplete search event如何触发自动完成搜索事件
【发布时间】:2011-05-26 08:27:39
【问题描述】:

我在输入框上设置了 jQuery 自动完成功能。

一切正常。

但是,我希望有一个按钮,单击该按钮将触发自动完成,就好像用户在输入中键入了一些文本一样。我会传递一个特定的字符串。

关于如何做到这一点的任何想法?

【问题讨论】:

    标签: jquery jquery-ui autocomplete jquery-autocomplete


    【解决方案1】:

    JQuery UI 的自动完成有一个search 方法:

    myAutocomplete.autocomplete('search', 'sometext');
    

    【讨论】:

    • 这不会导致下拉选项出现
    • @Anthony...文档说应该。你设置minLength:0了吗?
    • 在选项中(即创建自动完成时传递的对象)我会假设。我认为这个参数只是意味着“除非输入这么长,否则不要搜索”——如果你没有设置它,它可能默认为 0,所以这不太可能是问题。
    • @sje397 您的假设是合乎逻辑的,但不正确。 minLength 默认值为 1,因此如果您的搜索字符串为空,则不指定它确实会导致问题。
    【解决方案2】:

    这适用于 #inputID 是附加自动完成功能的文本输入。

    $("#inputID").autocomplete('search');
    

    在 FireFox 和 Chrome(Ubuntu 12.04 LTS)中测试

    【讨论】:

    • 嗯.. 我无法让它工作。我有一个带有 ID 的文本输入和一个在其上创建的自动完成功能,它工作得很好(使用远程数据源,v1.9)。但是,如果我尝试完全按照您提到的方式进行呼叫(在焦点事件中,附加到我的 ID)- 什么也不会发生。该事件确实发生了,但是对 autocomplete('search') 的调用没有做任何事情,屏幕上没有显示下拉菜单,也没有生成 xHttp。我不知道还有什么可能丢失,我在它周围跳了好几个小时;(
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-16
    • 2018-10-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多