2016-08-08 5 views
0

私はAPIを呼び出して、この応答を使用して選択ドロップダウンリストに値を設定しています。 「国を選択してください」という選択ドロップダウンボックスにあらかじめ入力しようとしていますが、国がAPI呼び出しから返されているので、$scope.countries.selectがこの段階で定義されていないと思われます。国は、API呼び出しから返されるオブジェクトAPIコールからドロップダウンするためのng-init

HTML

<select ng-init="countries.select" ng-model="country" ng-change="getRoles(country)" ng-options="key as value for (key , value) in countries"></select> 

は次のようになります。

$scope.countries = { 
    AU:"Australia", 
    BE:"Belgium", 
    US:"United States" 
} 

私はその後countries.selectとして

$scope.countries.select = "Please select a country"; 

に次のようにプッシュしているありますAPIの応答として定義されていない私はこれが動作していない理由は信じて、まだeを返す必要があります。

答えて

0

あなたは国の価値を正しく初期化していません。 jsは国が何であるか分からないので、国が定義されていないのでcountries.selectを割り当てることはできません。まず、国を空のオブジェクトに初期化する= {}。

しかし、リストのデフォルト選択されたオプションを表示するだけであれば、「国を選択してください」と読むことができます。

<select ng-model="country" ng-change="getRoles(country)" ng-options="key as value for (key , value) in countries"> 
<option value="">Please choose a country</option> 
</select> 
関連する問題