我正在尝试触发焦点或点击事件的自动完成列表。此解决方案有所帮助,但是当我第二次单击输入字段时,没有任何反应:列表不会出现。
$('input').autocomplete({
source: ["1","2"],
minLength: 0
}).focus(function(){
$(this).trigger('keydown.autocomplete');
});
我尝试了这个变种 - 没有好的
$(this).keydown();
这条线在同一个地方运作良好:
$(this).attr('value,new Date());
P.S。 jQuery UI 1.8.16,jQuery v1.7.1
答案 0 :(得分:2)
您可以使用
$('input').autocomplete({
source: ["1","2"],
minLength: 0
}).focus(function(){
$(this).autocomplete('search');
});
答案 1 :(得分:0)
尝试:
$('input').autocomplete({
source: ["1","2"],
focus: function(){ $(this).autocomplete('search'); },
minLength: 0
});
答案 2 :(得分:0)
由于该字段已经聚焦,因此不会调用焦点事件,请尝试:
$('input').autocomplete({
source: ["1","2"],
minLength: 0
}).focus(function(){
$(this).trigger('keydown.autocomplete');
}).click(function(){
$(this).trigger('keydown.autocomplete');
});
这复制了一些代码,除了你所拥有的简单单行之外,这可能会变得更加混乱;如果它确实你可以通过拉出这样的功能来改进它:
$('input').autocomplete({
source: ["1","2"],
minLength: 0
}).focus(myfocus).click(myfocus);
function myfocus (e){
$(this).trigger('keydown.autocomplete');
}