我有ul li
元素,其中是寫入用戶列表。 我有一個輸入,用戶可以在其中編寫和過濾用戶列表。 ,這個ul元素默認是隱藏的。在關注輸入之後,我展示了這個ul元素,並且模糊地隱藏了這個ul。angularjs自定義篩選器在下拉列表中
<input type="text" autocomplete="off" ng-model="checkData[key]" />
<ul>
<li ng-repeat="user in users | identification:checkData[key]">{{user}}</li>
</ul>
我的過濾器:
return (items: Array<string|number>, value: string|number) =>
{
if(typeof items !== 'undefined')
{
var filtered: Array<string|number> = [];
for(var i: number = 0, length: number = items.length; i < length; i++)
{
var element: string|number = items[i];
if((((element + '').indexOf(value + '') === 0) && element !== value) || typeof value === 'undefined')
{
filtered.push(element);
}
}
return filtered;
}
}
這工作外觀極好,但我的一個問題。當用戶在輸入中輸入一些值時,ul元素中的用戶列表將被過濾。
所以當用戶再次關注輸入時,在ul中顯示過濾的數據。我想在每個焦點上顯示完整列表並且不要刪除輸入值。
如何實現這一目標?
不要在'li'的'NG-repeat'使用濾波器 '
@ Kulbhushan, 在哪裏寫? –
如果你不想過濾數據,你爲什麼要應用過濾器iteself? – Kulbhushan