基于变量名调用jQuery自动完成小部件函数

时间:2015-07-09 03:39:02

标签: javascript jquery autocomplete

因此,要初始化文本框的自动填充功能,请执行此操作$('#textbox').autocomplete({...});

我宣布了一个自定义小部件:

$.widget( "custom.catcomplete", jQuery.ui.autocomplete, {
    ......
});

在这种情况下,小部件的名称为catcomplete,因此要初始化自定义自动填充,您可以执行以下操作:$('#textbox').catcomplete({...});

现在是棘手的部分。我尝试使用变量名称调用$('#textbox').catcomplete({...});,这样:

var w = 'catcomplete';
//this is where i try to call the widget
$('#textbox').{w}({...}); // <-- this is obviously wrong

虽然这个例子显然是错误的,但我希望它能够让我对我尝试做的事情有一个很好的了解。顺便说一下,无法修改小部件(遗留问题)。

先谢谢!

1 个答案:

答案 0 :(得分:1)

这个简单的代码可以调用jQuery.find方法(获取正文中的第一个div):

$('body')['find']('div:first')

所以,你的解决方案应该是这样的:

$('body')[yourVariable]({...})