我正在调用API并使用此响应填充选择下拉列表。我正在尝试使用“请选择一个国家/地区”预先填充选择下拉框,但是当从api调用返回国家/地区时,以下内容无法正常工作,因为我认为此阶段未定义$scope.countries.select
。
HTML
<select ng-init="countries.select" ng-model="country" ng-change="getRoles(country)" ng-options="key as value for (key , value) in countries"></select>
从api调用返回的countries对象如下所示:
$scope.countries = {
AU:"Australia",
BE:"Belgium",
US:"United States"
}
然后我将以下内容推入
$scope.countries.select = "Please select a country";
由于countries.select
未被定义为仍需要返回api响应,我认为这是不起作用的原因。
答案 0 :(得分:0)
您没有正确初始化国家/地区的价值。由于js不知道什么是国家,因此您无法分配countries.select,因为国家/地区未定义。首先初始化国家以清空对象= {}。
但是,如果您只需要显示列表的默认选定选项以阅读&#34;请选择一个国家&#34;你可以这样做。
<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>