2016-04-08 12 views
1

ここに私のビューがあります。私は3つのドロップダウンを持っています。選択要素のngモデルの値は定義されていません

$scope.newRecord = { 
    'newBaseTemplate' : 'A', 
    'newProcessElement' : 'PE6', 
    'newScreenName' : 'ACTION_BAR' 
}; 
$scope.addNew = function(){ 
    var id = $scope.records.length + 1; 
    id = 'record' + id; 
    console.log($scope.newRecord.newBaseTemplate); 
    console.log($scope.newRecord.newProcessElement); 
    console.log($scope.newRecord.newScreenName); 
    $scope.records.push({ 
     id : id, 
     baseTemplate : $scope.newRecord.newBaseTemplate, 
     processElement : $scope.newRecord.newProcessElement, 
     screenName : $scope.newRecord.newScreenName 
    }); 
}; 
:私は

<div class="row"> 
    <div class="input-field col s12"> 
     <select ng-model="newRecord.newBaseTemplate" id="newBaseTemplate"> 
      <option value="" disabled selected>Choose Base Template</option> 
      <option>A</option> 
      <option>B</option> 
      <option>D</option> 
     </select> 
     <label>Choose your Base Template</label> 
    </div> 
</div> 
<div class="row"> 
    <div class="input-field col s12 " > 
     <select ng-model="newRecord.newProcessElement"> 
      <option value="" disabled selected>Choose Process Element</option> 
      <option>PE1</option> 
      <option>PE3</option> 
      <option>PE6</option> 
     </select> 
     <label>Choose Your Process Element</label> 
    </div> 
</div> 
<div class="row"> 
    <div class="input-field col s12"> 
     <select ng-model="newRecord.newScreenName"> 
      <option value="" disabled selected>Choose Screen Name</option> 
      <option>ACTION_BAR</option> 
      <option>DETAIL_GROUP</option> 
      <option>NORMAL_VIEW</option> 
     </select> 
    <label>Choose Your Screen Name</label> 
    </div> 
</div> 

がコントローラでは、私は私の見解で新しいボタンのクリックを追加したときにコールされ、AddNewメソッドで値を取得しています「未定義」取得しています私のコントローラに値をフェッチしようとしていますということ

+0

あなたの問題を複製jsfiddleを作成することができますか? –

答えて

1

<div class="row"> 
     <div class="input-field col s12 topMargin" > 
      <select ng-model="d.newPE"> 
       <option value="" disabled selected>Choose Process Element</option> 
       <option>PE1</option> 
       <option>PE3</option> 
       <option>PE6</option> 
      </select> 
      <label>Choose Your Process Element</label> 
     </div> 
    </div> 

はコントローラで

$scope.d = {}; 
を初期化し、これを試してみてください

$scope.d.newPE 
+0

私は未定義のまま動作しようとしました。 –

+0

デフォルト値の$ scope.d = {newPE: 'PE1'}を初期化します。 –

+0

その後、私はデフォルト値しか得ていません。オプション選択を変更すると新しい選択されたオプションが表示されません –

0

は、以下のexample.Itが完璧に動作を参照してくださいます:

<html> 
<head> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.8/angular.min.js"></script> 
</head> 
<body ng-app="myApp" ng-controller="myCtrl"> 
<select ng-model="name"> 
    <option>Peter</option> 
    <option>Jenny</option> 
</select> 
{{name}} 
<script> 
//Module Declaration 
var app = angular.module('myApp',[]); 
//Controller Declaration 
app.controller('myCtrl',function($scope){ 
    $scope.name="Please Select" 
}); 
</script> 
</body> 
</html> 
+0

ロジックに違いは見られません。同じコードがありますが、私のために働いていません。 –

関連する問題