gpt4 book ai didi

jquery - 如何将自定义回调函数附加到 jquery 自动完成扩展?

转载 作者:行者123 更新时间:2023-12-03 23:02:19 24 4
gpt4 key购买 nike

我正在使用 Dylan Verheul、Dan G. Switzer、Anjesh Tuladhar、Jörn Zaefferer 提供的 jquery autocomplete 1.0.2 扩展。当从自动完成控件中调用 .show() 和 .hide() 时,我试图执行我自己的回调函数。我还没有找到任何方法让它真正识别我的回调函数。如果有人熟悉此控件并可以提供帮助,我将不胜感激。

最佳答案

抱歉,我对你的问题没有任何简单的答案,我检查了插件源代码,没有找到任何机制让你做你想要的。我认为您必须自己更新此插件才能使其按您的意愿工作。

这个想法是将回调添加到 options 参数,然后让插件使用这些回调。首先,您必须修改插件代码。转到创建负责显示/隐藏自动完成控件的类的函数:

$.Autocompleter.Select = function (options, input, select, config) {

如果向下滚动,您可以看到该函数返回一个带有 show()hide() 方法的对象。您可以添加以下代码:

hide: function() {
...
options.showCallback && options.showCallback(); // Invoke callback function if set
},
...
show: function() {
...
options.hideCallback && options.hideCallback(); // Invoke callback function if set
},

最后,当您创建自动完成功能时,您应该将回调添加到您的选项中:

$("#myTextBox").autocomplete("http://...",
{
showCallback : function() { /* do what you want here */ },
hideCallback : function() { /* do what you want here */ }
});

根本没有经过测试,这只是一个快速而肮脏的解决方案。我希望这会有所帮助。

关于jquery - 如何将自定义回调函数附加到 jquery 自动完成扩展?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/610847/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com