如何在angularjs中将默认值设置为下拉列表

时间:2017-09-27 04:27:59

标签: javascript angularjs

嗨我正在开发angularjs中的web应用程序。我有一个带有一些值的dropdownlistbox。下面是我的dropdownlistbox html代码。

<select id="calc-year" ng-model="period" name="period" required range-numberddwn="rangeddwn">
   <option value="" label="{{ 'Month' | translate }}">{{ 'Month' | translate }}</option>
   <option ng-repeat="x in cal" value="{{x.Period}}">{{x.Period}} {{'Months' | translate}}</option>
</select>

以下是我为dropdownlistbox分配值的代码。

$scope.cal = response.data.data.Period;

以下是我分配给cal的数据的屏幕截图。

Dropdown values

如果我想默认设置第4个值,那么我尝试如下。

$scope.period = $scope.cal[4]; and $scope.period = response.data.data.Period[4];

每当我按上述方式设置时,空白值将出现在下拉列表中

以上两个选项对我来说都没有用。我可以知道设置默认值的解决方案是什么?任何帮助,将不胜感激。谢谢。

2 个答案:

答案 0 :(得分:1)

如果要设置第4个值索引应为3

 $scope.period = $scope.cal[3]; 
 $scope.period = response.data.data.Period[3];

答案 1 :(得分:1)

在控制器中,在范围变量中设置一个值,您希望该值作为下拉列表的默认值。确保,cal变量存在于范围内。然后尝试这样的事情,

$scope.calValue = $scope.cal[3]; //This will be Default cal value

然后在你的视图(html)中,使用像这样的ng-options,

<select ng-model="calValue" ng-options="x.Period for x in cal"></select>

现在,calValue将是下拉列表中的默认值,如果您从下拉列表中选择任何其他选项,那么它将成为calValue的值。

干杯!!