设置值以选择angularjs

时间:2015-12-17 15:50:12

标签: javascript angularjs

MEDService.users("GET", "", {"action" : "getUsers"})
  .success(function(data, status, headers, config) {
    $scope.data1 = data;

有这个代码,我怎么能在前端的select中设置这个项目(从mongo获取)? data1有字段:用户名,名称,密码。我只需要用户名

<select ng-model="??" style="display: block" >
    <option ng-selected="??"
            ng-repeat="??"
            value="???">
      ???
    </option>
</select>

3 个答案:

答案 0 :(得分:1)

假设您的data1看起来像

data1 = [
      {name:'Real Name1', username:'username1', password: 'secret'},
      {name:'Real Name2', username:'username2', password: 'secret'},
      {name:'Real Name3', username:'username3', password: 'secret'}
    ]

<select ng-model="selectedUser" ng-options="user.name for user in data1"></select>

所选用户将存储在selectedUser中,您可以使用

轻松验证该用户
<h2>{{selectedUser}}</h2>

在你的HTML中。

工作示例:http://plnkr.co/edit/pggWiNO0TpIlCLOlFtzW

答案 1 :(得分:0)

您必须在范围内创建另一个属性,例如selectedValue,然后使用此标记:

&#13;
&#13;
 <select ng-model="$scope.selectedValue">
     <option ng-repeat="option in $scope.data1" value="{{option.id}}">{{option.name}}</option>
 </select>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

据我了解你有类似的东西:

$scope.data1 = [
   {username: 'olga', name: 'Olga K', password: 'querty'}, 
   ....
];

因此,在这种情况下,您将获得username olga值。

我看到你可以做的两个解决方案

字符串数组的第一个解决方案您可以准备要查看的日期。

$scope.data1 = $scope.data1.map(item => item.username);

然后您的 html 可能看起来像那样

<select ng-model="SELECTED_PROPERTY" ng-options="o as o for o in data1"></select>

第二个灵魂 当你有对象数组

<select ng-model="SELECTED_PROPERTY" ng-options="o.username as o.name for o in data1"></select>

注意:如果你从不使用其他对象属性,首先解决方案最好是因为使用少量RAM内存。