我有一份国家清单及其相应的州。
现在我想在编辑模式下打开时在下拉控件中绑定国家/地区和州值。
这是小提琴链接:
http://jsfiddle.net/mariapithia/4yj8rprp/9/
<tr data-ng-repeat="friend in friends">
<td><strong>{{ friend.Id }}</strong></td>
<td>
<p data-ng-hide="friend.editMode">{{ friend.firstname}}</p>
<input data-ng-show="friend.editMode" type="text" data-ng-model="friend.firstname" />
</td>
<td>
<p data-ng-hide="friend.editMode">{{ friend.lastname}}</p>
<input data-ng-show="friend.editMode" type="text" data-ng-model="friend.lastname" />
</td>
<td>
<p data-ng-hide="friend.editMode">{{ friend.Country.Name }}</p>
@*How do i use select here for dropdown for binding country name in my dropdown*@
@*<select data-ng-show="friend.editMode">
<option value="">-- Select Country --</option>
</select> *@
</td>
<td>
<p data-ng-hide="friend.editMode">{{friend.State.Name }}</p>
@*How do i use select here for dropdown for binding state name in my dropdown*@
@*<select data-ng-show="friend.editMode">
<option value="">-- Select State--</option>
</select> *@
</td>
<td>
<p ><a data-ng-click="toggleEdit(friend)" href="javascript:;">Edit</a> | <a data-ng-click="deletefriend(friend)" href="javascript:;">Delete</a></p>
</td>
</tr>
</table>
就像我使用textbox显示firstname和lastname.sameway一样,我想使用下拉列表在下拉列表中显示我的国家/地区名称和状态名称,并允许用户从下拉列表中选择其他国家/地区,如果用户想要选择
我从这个链接中获取了一些代码,只添加了少量字段: http://www.c-sharpcorner.com/uploadfile/raj1979/crud-operations-in-mvc-5-using-webapi-with-angularjs/
答案 0 :(得分:2)
您可以使用ng-repeat
<select data-ng-show="friend.editMode" ng-model="friend.Country.Name">
<option ng-repeat="country in countries" value="{{country}}" ng-selected="friend.Country.Name==country">{{country}}</option>
</select>
或使用ng-options
<select ng-model="friend.Country.Name" ng-options="country as country for country in countries"></select>
在您的控制器中定义一组国家/地区。
$scope.countries = ['America', 'Australia', 'london'];
答案 1 :(得分:1)
以下是您希望您可以将ng-options用于状态和选项框的选项。国家。
<强> HTML 强>
<td>
<p data-ng-hide="friend.editMode">{{ friend.Country.Name }}</p>
<select data-ng-show="friend.editMode" ng-model="friend.Country" ng-options="country.Name for country in countries track by country.Id "></select>
</td>
<td>
<p data-ng-hide="friend.editMode">{{friend.State.Name }}</p>
<select data-ng-show="friend.editMode" ng-model="friend.State" ng-options="state.Name for state in states track by state.Id "></select>
</td>
<强>控制器强>
$scope.countries = [{
"Id": 1,
"Name": "America",
}, {
"Id": 2,
"Name": "Australia",
}, {
"Id": 3,
"Name": "london",
}];
$scope.states = [{
Id: 1,
CountryId: 1,
Name: "Chicago",
}, {
Id: 2,
CountryId: 2,
Name: "sydney",
}, {
Id: 3,
CountryId: 3,
Name: "abc",
}];
<强> Working Fiddle 强>
注意强>
按ID使用跟踪选择加载选项,如此建议 github issue