【发布时间】:2015-02-09 13:37:17
【问题描述】:
我正在尝试进行自定义搜索。我在angularjs中为autocomplete得到了这个http://jsfiddle.net/ajeet28/wzx13Lu1/。我如何自定义它以便它可以从第一个字符本身开始匹配
html
<div ng-app='MyModule'>
<div ng-controller='DefaultCtrl'>
<input auto-complete ui-items="names" ng-model="selected">
selected = {{selected}}
</div>
</div>
js
function DefaultCtrl($scope) {
$scope.names = ["john", "bill", "charlie", "robert", "alban", "oscar", "marie", "celine", "brad", "drew", "rebecca", "michel", "francis", "jean", "paul", "pierre", "nicolas", "alfred", "gerard", "louis", "albert", "edouard", "benoit", "guillaume", "nicolas", "joseph"];
}
angular.module('MyModule', []).directive('autoComplete', function($timeout) {
return function(scope, iElement, iAttrs) {
iElement.autocomplete({
source: scope[iAttrs.uiItems],
select: function() {
$timeout(function() {
iElement.trigger('input');
}, 0);
}
});
};
});
【问题讨论】:
-
第一个字符是什么意思,它已经可以正常工作了?你想匹配特定的字符串,也就是说,如果我输入 b,那么应该显示以 b 开头的字符串??
-
在搜索框中输入一个你会得到查理作为第一个结果。在我想要的情况下,如果我输入 a 它应该只显示以'a'开头的结果。
标签: javascript jquery angularjs search autocomplete