2015-02-09 67 views
7

我需要在我的角度,微風應用程序使用國家下拉列表中,我試着用下面的: https://github.com/banafederico/angularjs-country-select國家選控制angularJs

這裏的問題是,它沒有一個國家/代碼對,只是國家的長名,我不想保存到DB中。是否有任何其他角度指令/服務可用於填充國家/地區的下拉菜單?我已經做了一些挖掘工作,但是我沒有找到任何角度準備使用的國家選擇選項。

+0

我建議創建自己的。你甚至可以分叉那個目錄,並增加它。 – 2015-02-09 07:01:58

+0

我想知道,這似乎是一個非常常見的功能,也許有東西已經在那裏沒有我重新發明輪子:) – devC 2015-02-09 07:07:01

+0

我通常不喜歡使用其他人的代碼。它通常會引入更多問題。話雖如此,也許還有另外一種,但是如果沒有現有的構建的話。 – 2015-02-09 07:11:30

回答

13

您可以使用ng-repeatng-options指令並創建國家/地區下拉菜單。通過這種方式,你可以完全控制。如果需要的話,在許多地方使用此元素,您可以創建爲指令。

演示:http://plnkr.co/edit/2y9Jcektl8g2L0VoNQyp?p=preview

使用NG-option指令

<select ng-model="country" ng-options="country.name for country in countries track by country.code"> 
    <option value="">-- Select a Country --</option> 
    </select> 

使用NG-重複指令:

<select ng-model="country"> 
    <option value="">-- Select a Country --</option> 
    <option ng-repeat="country in countries" value="{{country.code}}">{{country.name}}</option> 
</select> 

國家範圍在你的控制器:

$scope.countries = [ 
     {name: 'Afghanistan', code: 'AF'}, 
     {name: 'Åland Islands', code: 'AX'}, 
     {name: 'Albania', code: 'AL'}, 
     {name: 'Algeria', code: 'DZ'}, 
     {name: 'American Samoa', code: 'AS'} 
    ]; 
+1

@ CHAT_2013這就是爲什麼複製功能沒問題。這基本上是一個你可以控制的清單。你做一個簡單的循環。如果你願意,你可以用指令包裝它。 – 2015-02-09 07:34:27