angularjs
2014-09-24 162 views 0 likes 
0

我已阅读关于此问题的多篇文章,本网站上给出的解决方案似乎对我无效。我有一个选择框有几个选项,我需要一个默认值显示给用户。目前没有选择任何选项。这段代码可能有什么问题。使用AngularJS在选择框选项上选择默认值

HTML

<select class="form-control input-sm" name="collegeTranscripts1" id="collegeTranscripts1" data-ng- model='transcriptCAdata.typeAccepted' data-ng-options='option.value as option.name for option in typeOptions1'></select> 

JS

$scope.typeOptions1 = [ 
      { name: 'Please Select', value: 'selected' }, 
      { name: 'Official', value: 'OFFICIAL' }, 
      { name: 'Unofficial', value: 'UNOFFICIAL' }, 
      { name: 'None', value: 'NONE' } 
     ]; 

     $scope.form = {type : $scope.typeOptions1[0].value}; 

回答

0

有几个问题,我在你的代码中看到:

  1. 属性data-ng-model进行分离HTML,它看起来像这样:data-ng- model='transcriptCAdata.typeAccepted'
  2. 另一个问题是,在您的模型中,您正在使用范围属性transcriptCAdata.typeAccepted,但是您没有在控制器中声明它。我在控制器中看到的是$scope.form = {type : $scope.typeOptions1[0].value};

您只需将data-ng-model更改为data-ng-model="form.type"即可。

DEMO

angular.module('app', []) 
 

 
    .controller('Ctrl', function($scope) { 
 
    $scope.typeOptions1 = [ 
 
      { name: 'Please Select', value: 'selected' }, 
 
      { name: 'Official', value: 'OFFICIAL' }, 
 
      { name: 'Unofficial', value: 'UNOFFICIAL' }, 
 
      { name: 'None', value: 'NONE' } 
 
     ]; 
 

 
    $scope.form = {type : $scope.typeOptions1[1].value}; 
 
    });
<div ng-app="app" ng-controller="Ctrl"> 
 
    <select class="form-control input-sm" name="collegeTranscripts1" 
 
      id="collegeTranscripts1" data-ng-model='form.type' 
 
      data-ng-options='option.value as option.name for option in typeOptions1'> 
 
    </select> 
 
    
 
    {{form.type}} 
 
</div> 
 

 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

UPDATE:

我抄你所提供的PLUNKER并修改它,因为它有它的问题。

+0

的NG-模型必须被NG-模型= 'transcriptCAdata.typeAccepted' – jmccommas 2014-09-24 17:20:47

+0

为什么难道不这项工作:$ scope.transcriptCAdata = {typeAccepted:$ scope.typeOptions1 [0]。价值}; – jmccommas 2014-09-24 17:21:15

+0

如何:$ scope.transcriptCAdata = {typeAccepted:$ scope.typeOptions1 ='selected'}; – jmccommas 2014-09-24 17:24:18

相关问题