我有一个API,它返回包含三个字段的列表。 EG ['Michał',6,'Michal']。第一个字段是名称全名,在我的语言中使用了变音符号,第二个是ID,thrid是全名,删除了变音符号。
现在我要输入我的选择框Michal,我希望我的搜索框找到Michal和Michał。实际上我是通过从选择框输入中删除dacritics来完成的。
现在,如果我输入Michal,它会显示Michal,但是全名是Michał,如果我输入Michał,它会说没有结果但过滤得当。
如何更改我的预先输入/选择框,以便在我写Michał之后在下拉列表中显示Michał或Michal。
答案 0 :(得分:1)
请参见此处:http://plnkr.co/edit/dYyzgL9B1i06mJCePTwF?p=preview
HTML:
<div class='container-fluid' ng-controller="TypeaheadCtrl">
<h4>Static arrays</h4>
<pre>Model: {{selected | json}}</pre>
<input type="text" ng-model="selected" typeahead="person as person.pplname for person in persons | filter:$viewValue | limitTo:8" class="form-control">
</div>
JS:
angular.module('plunker', ['ui.bootstrap']);
function TypeaheadCtrl($scope) {
$scope.selected = undefined;
$scope.persons = [{name:"michal", pplname:"michał", id:1},
{name:"janek", pplname:"janek", id:5},
{name:"marek", pplname:"marek", id:6},
{name:"slawek", pplname:"sławek", id:7},
{name:"olek", pplname:"olek", id:8},
{name:"tomek", pplname:"tome", id:9}];
}