我正在使用pengoworks的jquery自动完成插件:http://www.pengoworks.com/workshop/jquery/autocomplete_docs.txt
在选择条目时调用的函数中,我想找出输入元素的名称(id)。 (因为回调将用于多个自动复合。)
代码如下所示:
myCallback = function(o) {
// I want to refer to "myInput" here - but how?
}
setup = function() {
$('#myInput').autocomplete('blah.php', {onItemSelect: myCallback});
}
答案 0 :(得分:1)
尝试将extraParams中的id传递给服务器端:
$('#myInput').autocomplete('blah.php', {onItemSelect: myCallback}, extraParams: {name: $(this).attr('id')} );
或者向blah.php添加一些id?id = someid。
然后在results数组中将其发送回回调函数。
答案 1 :(得分:1)
myCallback = function(li, $input) {
// I need to refer to the appropriate "myXxxInput" here
alert($input.attr('id'));
}
setup = function() {
setupInput($('#myFirstInput'));
setupInput($('#mySecondInput'));
}
function setupInput($input) {
$input.autocomplete('blah.php', {onItemSelect: function(li) {
myCallback(li, $input);} });
}
感谢此解决方案的Dylan Verheul(自动完成的作者)
答案 2 :(得分:0)
你不能只使用$(this)
吗?
答案 3 :(得分:0)
你不能在回调中指定变量吗?
$('#myInput').autocomplete('blah.php', { onItemSelect: myCallback($(this)) });