2015-10-17 106 views
1

我真的很陌生,并试图在我的应用程序注册页面中为各个国家实施下拉菜单,我可以在响应中显示下拉数据中的数据,但我不是能够在选择物品时获得其关键价值。从ng选项获取密钥angularjs

下面是对此我在我的下拉显示我的JSON响应:

{ 
    AD: "Andorra", 
    AE: "United Arab Emirates", 
    AF: "Afghanistan", 
    AG: "Antigua and Barbuda", 
    AI: "Anguilla", 
    AL: "Albania", 
    AM: "Armenia", 
    AN: "Netherlands Antilles", 
    AO: "Angola", 
    AQ: "Antarctica", 
    AR: "Argentina" 
} 

在我的API响应现在的储蓄,如:

$scope.results = response.data; 

而且这里是我的显示方式它在我的下拉内:

<select class="input-select" > 
    <option value="" disabled selected hidden>Country</option> 
    <option ng-change="selectedCountry()" ng-repeat="(key, value) in results" ng-model="country" value="{{key}}">{{value}}</option> 
</select> 

我只是试图通过全光照让用户所选国家的关键g功能

ng-change="selectedCountry()" 

在我的Html。但是这个函数没有被调用。

任何帮助将不胜感激 谢谢。

回答

2

您需要使用ngOptions指令以及ngModel的选择:

<select class="input-select" 
     ng-model="country" 
     ng-change="selectedCountry()" 
     ng-options="key as value for (key, value) in results"> 
    <option value="" disabled hidden>Country</option> 
</select> 
+0

这位朋友你好,感谢您的回复,但我仍没有得到所选国家的关键,我使用$ scope.country到得到钥匙。 – sid

+1

尝试在你的控制器中使用对象,例如:'$ scope.user = {}',并在HTML中绑定到这个对象'ng-model =“user.country”'。 – dfsq

+0

谢谢兄弟..... – sid