【发布时间】:2016-03-01 03:29:01
【问题描述】:
下面是我想要自动完成功能的输入框:
<input auto-complete-user ng-hide="searchFilter.AssignedToAnyOne" ng-model="searchFilter.FilterByUser"
placeholder="Name / Company name" type="text" id="txtFilterUser"
class="filterUser form-control input-sm" />
还有 angularJS 指令 -
BTWebApp.directive('autoCompleteUser', function ($timeout) {
if (localStorage[1] != undefined) {
return function (scope, iElement, iAttrs) {
iElement.autocomplete({
source: JSON.parse(localStorage[1]),
select: function () {
$timeout(function () {
iElement.trigger('input');
}, 0);
}
});
};
}});
自动完成工作正常,除了一旦我从列表中选择了一个选项,自动完成就会再次触发,从而再次提示我选择的项目,这很烦人。但是,当我删除 iElement.trigger('input'); 时,它工作正常,但模型没有更新。
我在我的代码中使用它之前提到了这个jsFiddle,这个问题只在我在我的项目代码中使用它时出现,它在那个 jsFiddle 中工作得很好。我不知道我在这里错过了什么。这与引导程序或使用本地存储有关吗?因为这是我发现我的代码和 jsFiddle 之间的唯一区别。请帮忙。
【问题讨论】:
标签: jquery angularjs twitter-bootstrap autocomplete local-storage