I have a table with some sample data. I have a button that I want to use in a table row that will delete the entire table row when clicked. The problem is that I encoded will remove the contents from the table row and leave the button and table row. Or it will delete the last row of the table, not the row that the button is clicked on.
Here is what I have:
:
$scope.removeRow = function (product) { var index = -1; var productArray = eval($scope.products); for (var i = 0; i < productArray.legnth; i++) { if (productArray[i].productName == product.productName) { index = i; console.log(productArray[i].productName); } } if (index === -1) { alert("something broke"); } $scope.products.splice(index, 1); }
HTML
<table class="table table-bordered table-hover"> <tr> <th>Show or Hide </th> <th>Product</th> <th>Code</th> <th>Avaiable</th> <th>Price</th> </tr> <tr data-ng-repeat="product in products"> <td><input type="button" class="btn btn-primary" value="Hide" data-ng-click="removeRow(product)"/></td> <td>{{product.productName}}</td> <td>{{product.productCode}}</td> <td>{{product.releaseDate}}</td> <td>{{product.price | currency}}</td> </tr> </table>
angularjs
Troy bryant
source share