2016-10-26 69 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

相關問題