2016-10-13 3 views
0

anglejsでCRUDを作りたいです。私が更新を行うと、うまく動作しません。データは最初の索引だけが読み取られます。 2番目の行をクリックすると、データが最初のインデックスに読み込まれます。誰でも私を喜ばせることができますか?私は勉強するのに慣れています。 データリストビュー:Angularjsで更新する方法

<table class="table"> 
     <tr> 
      <th>ID</th> 
      <th>Name</th> 
      <th>Address</th> 
      <th>Action</th> 
     </tr> 
     <tr ng-repeat="x in listData"> 
      <td>{{x.id}}</td> 
      <td>{{x.nama}}</td> 
      <td>{{x.alamat}}</td> 
      <td> 
       <a href="#" ng-click="update(x.id)">Edit</a> 
      </td> 
     </tr> 
    </table> 

フォームの更新:

<h2>Add Data</h2> 
    <table> 
     <tr> 
      <td>Id</td> 
      <td><input type="text" ng-model="id"></td> 
     </tr> 
     <tr> 
      <td>Nama</td> 
      <td><input type="text" ng-model="nama"></td> 
     </tr> 
     <tr> 
      <td>Alamat</td> 
      <td><input type="text" ng-model="alamat"></td> 
     </tr> 
     <tr> 
      <td>&nbsp;</td> 
      <td><input type="button" value="Update" ng-click="edit()"></td> 
     </tr> 
    </table> 

コントローラ:

$scope.update = function(id){ 
     var index = getSelectedIndex(id); 
     var x = $scope.listData[index]; 
     $scope.id = x.id; 
     $scope.nama = x.nama; 
     $scope.alamat = x.alamat; 
    } 

    $scope.edit = function(id){ 
     var index = getSelectedIndex(id); 
     $scope.listData[index].nama = $scope.nama; 
     $scope.listData[index].alamat = $scope.alamat; 
    } 

答えて

2

あなたが期待している "ID" 内の "編集()" 機能がありますが、提供されていませんそれと "getSelectedIndex(id)"が最初の項目を返す可能性があります

関連する問題