我想使用Angularjs按字母順序拆分國家/地區列表。 有點像A:美國,澳大利亞B:巴西,不丹... 該名單來自一個名爲國家的表。我試圖在國名的第一個字母表上應用angularjs過濾器,但失敗了。我必須爲它創建一個自定義過濾器嗎?使用Angularjs按字母順序將國家拆分列表
0
A
回答
2
好吧我要回答我自己的問題,最終得到它的工作。 我在下面的格式拉動的國家名單從一個Postgres數據庫:
{"alpha2":"ao","alpha3":"ago","numeric":"024","country":"Angola"}
我想分裂國家的名單按字母順序是這樣的:
[例] http://infoplease.com/countries.html#ALPHA-A
我終於得到它通過編寫自定義過濾器的工作:
angular.module('countryFilter', []).filter('cfilter', function() {
return function(input,x) {
var groups = [];
for(var i = 0; i < input.length; i++) {
if (input[i].country.substring(0,1) == x)
groups.push(input[i]);
} return groups; }
});
,並用它作爲:
ng-repeat="data in countries | cfilter:'A'
{{data.country}}
不要讓我知道是否有這樣做沒有更好的辦法...
+0
很好的解決方案,我注意到自定義過濾器內的代碼被執行兩次,雖然 - 這是一個正常的行爲angularjs? –
1
這是不使用過濾器 http://www.bennadel.com/blog/2456-Grouping-Nested-ngRepeat-Lists-In-AngularJS.htm
的另一種可能的解決方案,他創建了一個新的數組標籤和數據。優點是在模板中,您不必命名所有可能的字母。
對於我自己,我從對象中取出客戶端的第一個字母,並將其存儲在標籤中。這樣我只能得到我使用的字母。
在客戶中,我用對象存儲了一個數組。
for(var i = 0; i < customers.length; i++){
var customer = customers[i];
if(customer[ 'title' ].substring(0,1) !== groupValue){
var group = {
label : customer[ 'title' ].substring(0,1),
customers : []
};
groupValue = customer.title.substring(0,1);
groups.push(group);
};
group.customers.push(customer);
};
0
排序項目列表是一個jQuery插件,創建類似於那些在音樂和聯繫人應用程序上看到蘋果設備 檢查鏈接的iOS風格的粘頭:
http://www.codingprogrammer.com/tutorialdemo/jquery-tutorial/sort-items-alphabetically-jquery-2/
相關問題
- 1. 按字母順序顯示國家?
- 2. 如何按字母順序拆分?
- 3. 將列表按字母順序排序
- 4. 按2列中的字母順序獲取國家/地區列表
- 5. 將按字母順序排列的列表拆分爲相等塊
- 6. PHP:按字母順序將數據拆分爲
- 7. 按字母順序排序,然後按字母順序排列
- 8. 在AngularJS中按字母順序排列下拉列表
- 9. 按字母順序排列單詞列表並按首字母順序篩選
- 10. 按字母順序排列Wordpress列表
- 11. 按字母順序排列2D列表?
- 12. 按字母順序排列列表項
- 13. C:按字母順序排列列表
- 14. 按字母順序排序列表
- 15. 按字母順序排序列表
- 16. 按字母順序排序列表
- 17. 按字母順序排列的鏈表不按順序排列
- 18. 使用Javascript按字母順序重新排列無序列表
- 19. 按字母順序排列
- 20. 按字母順序排列
- 21. 按字母順序排列
- 22. 將列表拆分成字母範圍
- 23. 將每個語句拆分爲按字母順序排列的兩個div
- 24. 使用jQuery按字母順序排列列表中的列?
- 25. 列表視圖按字母順序
- 26. 拆分陣列爲多個陣列按字母順序排列的iOS
- 27. 按字段順序排列+按字母順序排列
- 28. 使用猛禽按字母順序排列數組列表?
- 29. Python:按字母順序對列表進行排序/分組
- 30. 如何使用Java按字母順序排序鏈接列表?
你想在哪裏使用那個?一些帶有下拉列表的文本框? –
像這樣(http://www.infoplease.com/countries.html#ALPHA-A) – firangi
控制器中的數據是什麼樣的?它來自服務嗎?一個jsfiddle或一些代碼顯示你已經嘗試過會有所幫助。 – thebenedict