我正在使用jQuery UI autocomplete在应用程序中实现自动完成小部件。我想做的是即使在打开状态(autocomplete widget处于扩展状态)下,也要实时加载源中的更改。

例如:

dummyArray = ['foo', 'bar', 'baz', 'Bazz'];

$('#target').autocomplete({
  source: dummyArray;
});


几秒钟后更改为:

dummyArray = ['loading..'];
$('#target').autocomplete('option', 'source', dummyArray);


几秒钟后,它将是:

dummyArray = ['something', 'goes', 'here'];
$('#target').autocomplete('option', 'source', dummyArray);


当我折叠/关闭自动完成功能并再次展开/打开它时,它的工作正常。但是不是处于打开状态,这就是为什么有时它显示不再相关的文本/数据的原因。

最佳答案

这是search方法的用途:https://api.jqueryui.com/autocomplete/#method-search

dummyArray = ['something', 'goes', 'here'];
$('#target').autocomplete('option', 'source', dummyArray);
$('#target').autocomplete('search');


这是一个小提琴示例:https://jsfiddle.net/2eL26jL7/1/

09-25 18:29