我有一个表格,当单击一行时,我调用此函数:
$scope.updateRow = function(row) {
$scope.row = angular.copy(row);
}
$scope.row 有一个 name 属性,我有一个应该显示此名称的选择菜单:
<select name="rowName" ng-model="row.name" required required-message="'A name must be selected '" class="sa-select">
<option value=""></option>
<option ng-repeat="name in names" value="{{name.fullName}}">{{name.fullName}}</option>
</select>
但是,单击该行时,它将选择菜单中的选项值设置为
<option value="? string:test name ?"></option>
即使 $scope.row.name = "测试名称"
选项值应如下所示:
<option value="test name">test name</option>
似乎与这个问题类似的问题:Angular 在设置模型值时将奇怪的选项添加到选择元素中
<select name="rowName" ng-options="name.fullName as name.fullName for name in names" ng-model="row.name" required required-message="'A name must be selected '" class="sa-select">
未经测试,但您可以在此处阅读更多内容:https://docs.angularjs.org/api/ng/directive/ngOptions
如果您想添加一个默认选项,它将如下所示:
<select name="rowName" ng-options="name.fullName as name.fullName for name in names" ng-model="row.name" required required-message="'A name must be selected '" class="sa-select">
<option value="your value"> your text </option>
</select>