ng-selected表达式返回true,但未选择

时间:2019-01-08 04:25:05

标签: angularjs

这是我添加的选择框,我需要动态选择一个项目。但是问题是ng-selected表达式返回true,但没有选择值。

<select id="Role" class="form-control" ng-model="rowContent.estimationRoleID"
  style="padding:0 !important">
  <option ng-selected="roles.roleId == rowContent.estimationRoleID"
    ng-repeat="roles in vm.Roles"
    value="{{ roles.roleId }}">
    {{ roles.role }}
  </option>
</select>

1 个答案:

答案 0 :(得分:0)

我已经为您的问题创建了一个演示,它可以正常运行。我认为从控制器发送数据以查看可能存在问题。 因此,您需要检查(rowContent)值是否来自控制器。

function testcontroller($scope) {
  $scope.Roles = [{
      "roleId": 1,
      "role": "admin"
  }, {
      "roleId": 2,
      "role": "user"
  }, {
      "roleId": 3,
      "role": "anonymous"
  }];
  $scope.rowContent = {
      "estimationRoleID": 2
  };
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.22/angular.min.js"></script>
<body ng-app ng-controller="testcontroller">
   <select id="Role" class="form-control" ng-model="rowContent.estimationRoleID">
      <option ng-selected="roles.roleId == rowContent.estimationRoleID"
         ng-repeat="roles in Roles"
         value="{{ roles.roleId }}">
         {{ roles.role }}
      </option>
   </select>
</body>