【问题标题】:jQuery autocomplete - mouse click result, input does not lose focusjQuery自动完成 - 鼠标点击结果,输入不会失去焦点
【发布时间】:2011-05-04 16:16:09
【问题描述】:

在自动完成结果列表中。如何捕获点击事件?目前的结果是链接。单击时,它们会打开一个带有嵌入 url 的新窗口,但是当发生这种情况时,自动完成不会失去焦点并且结果框会卡在打开状态。即使用户返回并单击页面上的任何位置,它也会保持打开状态。使其失去焦点的唯一方法是在输入框内单击,然后单击退出。

看起来打开新窗口失去了输入框的焦点,但没有触发 blur() 事件。

我在想如果我可以捕获点击事件,我可以手动触发一个 .blur() 但我尝试使用列表元素 $("li") 或其 css 名称 $(" .ui 菜单”)。我也尝试了自动完成 Select 事件,但没有做任何事情。

这看起来可能是一个解决方案:http://jeremydorn.blogspot.com/2010/04/fixing-jquery-ui-autocomplete.html

但我希望有更优雅的东西。

谢谢

【问题讨论】:

    标签: javascript jquery autocomplete


    【解决方案1】:

    你为什么不给链接一个点击处理程序closes the autocomplete

    例如:

    $("a.autocompleteLink").click(function() {
        $("input.autocomplete").autocomplete("close");
    });
    

    【讨论】:

    • 我也一直在尝试这个,但我无法为自动完成返回的链接找到正确的名称。 $("a.autocompleteLink") 我试过容器的名称,它显示的链接的类名,我能想到的一切
    • 您是否使用 Firebug 查看生成的代码?你想在这里达到什么目的?也许如果您显示生成自动完成的代码,我可以提供更多帮助。
    猜你喜欢
    • 1970-01-01
    • 2012-04-30
    • 2023-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-06
    • 2018-06-24
    相关资源
    最近更新 更多