2017-08-03 23 views
0

データを追加するときに、テキストボックスに値を入力するのではなく、データが追加された後でも更新ボタンを取得する代わりにボタンを終了しています。私のフルコードはここに:https://jsfiddle.net/GowthamG/jL5oza04/ 間違いはありますか?編集機能が角型JSで正しく機能していない

<script type="text/javascript"> 
var app=angular.module("mainapp",[]); 
app.controller('mycontrol',function($scope){ 
    $scope.filters=[]; 
    $scope.add=function(filter){ 
     $scope.filters.push(filter); 
      $scope.filter={}; 
     }; 
     $scope.update = function (index) { 
      $scope.editing = $scope.filters.indexOf(index); 
     }; 



<table border="2"> 
    <tr> 
     <td>FirstName</td> 
     <td>LastName</td> 
     <td>Fees</td> 
     <td>E-Course</td> 
    </tr> 
    <tr ng-repeat="filter in filters track by $index"> 
     <td><span ng-hide="update">{{filter.fname}}</span> 
      <input type="text" ng-show="update" ng-model="filter.fname"> 
     </td> 
     <td><span ng-hide="update">{{filter.lname}}</span> 
      <input type="text" ng-show="update" ng-model="filter.lname"> 
     </td> 
     <td><span ng-hide="update">{{filter.ffees}}</span> 
      <input type="number" ng-show="update" ng-model="filter.ffees"> 
     </td> 
     <td><span ng-hide="update">{{filter.eroll}}</span> 
      <input type="text" ng-show="update" ng-model="filter.eroll"> 
     </td> 
     <td> 
      <button ng-hide="update" ng-click="update = true; update($index)">Update</button> 
      <button ng-show="update" ng-click="update = false">Done</button> 
     </td> 
     <td> 
      <button ng-click="remove($index)">Remove</button> 
     </td> 
    </tr> 
</table> 
+0

?また、私は、あなたの更新変数がどこにでも追加されているコードのどこにも更新されていないのを見ています。完全なコードを投稿してください。あなたのHTMLにもエラーがあるようで、コントローラコードも不完全です。 – Shahzad

+0

完全なコードをアップロードしている場合は、投稿コードに最大コードがあり、質問を投稿できないことが示されます –

+0

フィドルまたはプルーンを作成してください。 – Shahzad

答えて

0

あなたは入力を非表示にするアドイン機能で$scope.updateの値を初期化する必要があります。これで、値が更新ボタン付きスパンに表示されます。

$scope.add=function(filter){ 
    $scope.filters.push(filter); 
     $scope.update=false; 
    }; 

ワーキングデモhttps://jsfiddle.net/kz8uLg10/2/

HTMLから自分のaddメソッドと呼ばれている