2016-10-26 49 views
0

我想设置默认值使用angularjs下拉列表。我粘贴下面的代码。 这是视图模型代码和HTML代码:如何使用angularjs将默认值设置为下拉列表viewmodel

appmodule.factory("testpage1ViewModel", function() { 
     function Testpage1ViewModel() { 
    this.SearchContainer1 = { 
     cmbGender:'' 
    }; 
    this.message = ''; 

    this.SearchContainer1_Master_cmbGender = { 
     ValidValues: [ 
        { id: '1', name: 'Male' }, 
        { id: '2', name: 'Female' }, 
        { id: '3', name: 'Transgender' } 
     ], 
     DefaultValue: { id: '1', name: 'Male' } 

      }; 

    } 
       return Testpage1ViewModel; 
}); 


<select name="cmbGender" 
          class="form-control" 
          ng-options="option.name for option in viewModel.SearchContainer1_Master_cmbGender.ValidValues track by option.id" 
          ng-model="viewModel.SearchContainer1.cmbGender"></select> 

回答

0

使用NG-初始化。见下面的例子:

在HTML

<select ng-change="fruitselect(fruitname)" ng-model="fruitname" ng-init="fruitname = fruits[0]" > 

    <option ng-repeat="fruit in fruits" value="{{fruit}}">{{fruit}}</option> 
    </select> 

并在控制器,

$scope.fruits = ['apple', 'orange','banana', 'grapes', 'plum']; 
+0

与上述代码一样,从视图模型中获取的值列表。我添加完整的viewmodel。 – venkat

0

如果你现有的代码是正确的,那么你可以定义NG-模式是这样的:

<select ng-model="DefaultValue.name" name="cmbGender" class="form-control" ng-options="option.name for option in viewModel.SearchContainer1_Master_cmbGender.ValidValues track by option.id"></select> 
+0

我尝试像上面那样,但它不起作用 – venkat

+0

正如我写的那样*如果你现有的代码是正确的,那么你可以像这样定义ng模型 – Jigar7521

相关问题