使用angularjs设置下拉列表的默认值?

时间:2013-11-11 22:11:03

标签: javascript asp.net angularjs

我的代码填充了dropdownlist和获取列表中最后一项的javascript变量。现在我要做的就是选择最后一项作为默认值。我错过了什么?

<div class="row">
<div>
    <select ng-init="lastItem" ng-model="congressFilter" ng-options="cc.congressLongName for cc in ccList"></select>
</div>
<div class="grid-style" data-ng-grid="userGrid">
</div>

   ccResource.query(function (data) {
    $scope.ccList.length = 0;
    angular.forEach(data, function (ccData) {
        $scope.ccList.push(ccData);
    })

    //Set default value for dropdownlist?
    $scope.lastItem = $scope.ccList[$scope.ccList.length - 1];
});

2 个答案:

答案 0 :(得分:3)

您只需要为控制器中的congress Filter指定一个值。

 $scope.congressFilter = 'someVal';

但这取决于您的数据的外观。

答案 1 :(得分:0)

这可能对新开发者有所帮助。需要在选项中为显示默认项添加默认ID。

我们添加下面的代码示例[$ scope.country.stateid =&#34; 4&#34; ]在controller $ scope中设置默认值。

    var aap = angular.module("myApp", []);

    aap.controller("MyContl", function($scope) {
      $scope.country = {};
      $scope.country.stateid = "4";

      $scope.country.states = [{
        id: "1",
        name: "UP"
      }, {
        id: "4",
        name: "Delhi"
      }];
    });

<body ng-app="myApp">
  <div ng-controller="MyContl">
    <div>
      <select ng-model="country.stateid" ng-options="st.id as st.name for st in country.states">
      </select>
     ID :  {{country.stateid}}
    </div>
  </div>
</body>