当前位置:  开发笔记 > 前端 > 正文

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

如何解决《如何将自定义回调函数附加到jquery自动完成扩展?》经验,为你挑选了1个好方法。

我正在使用Dylan Verheul,Dan G. Switzer,Anjesh Tuladhar,JörnZaefferer的jquery autocomplete 1.0.2扩展.我试图在自动完成控件中调用.show()和.hide()时执行我自己的回调函数.我还没有找到任何方法来实际识别我的回调函数.如果有人熟悉这种控制并且可以帮助我会非常感激.



1> ybo..:

对不起,我的问题没有任何简单的答案,我检查了插件源代码,但没有找到任何让你想要的机制.我想你必须自己更新这个插件,让它按你的意愿工作.

我们的想法是将您的回调添加到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 */ }
});

没有经过测试,它只是一个快速而肮脏的解决方案.我希望这有帮助.

推荐阅读
重庆制造漫画社
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有