javascript - Angularjs, Applying Action on Selected Checkboxes in Table - Stack Overflow

Im trying to Learn AngularJS and im implementing this Checkboxes that when i some checkboxes from the G

Im trying to Learn AngularJS and im implementing this Checkboxes that when i some checkboxes from the Grid and click the Remove Button then the Data from Table Should Be removed of Selected CheckBoxes.

I tried but cant figure out how to implement it.

Please see my this code on Plunker.

It would be nice, if you fork and Give Working Example of the Above Plunker.

Im trying to Learn AngularJS and im implementing this Checkboxes that when i some checkboxes from the Grid and click the Remove Button then the Data from Table Should Be removed of Selected CheckBoxes.

I tried but cant figure out how to implement it.

Please see my this code on Plunker. http://plnkr.co/edit/e7r65Me4E7OIWZ032qKM?p=preview

It would be nice, if you fork and Give Working Example of the Above Plunker.

Share Improve this question asked Jun 28, 2013 at 6:56 Sizzling CodeSizzling Code 6,07019 gold badges85 silver badges139 bronze badges
Add a comment  | 

1 Answer 1

Reset to default 20

An easy way would be to change your students list to:

$scope.students = [
  {Rollno: "1122",Name: "abc",Uni: "res", selected: false},
  {Rollno: "2233",Name: "def",Uni: "tuv", selected: false},
  {Rollno: "3344",Name: "ghi",Uni: "wxy", selected: false}
];

with:

<input type="checkbox" ng-model="student.selected">

in the view. With injecting filter into the controller, you can then rewrite the remove function to:

$scope.remove = function(){
  $scope.students = filterFilter($scope.students, function (student) {
    return !student.selected;
  });
};

here is full code:

(function (app, ng) {
  'use strict';

  app.controller('TableCtrl', ['$scope', 'filterFilter', function($scope, filterFilter) {
    $scope.students = [
      {Rollno: "1122",Name: "abc",Uni: "res", selected: false},
      {Rollno: "2233",Name: "def",Uni: "tuv", selected: false},
      {Rollno: "3344",Name: "ghi",Uni: "wxy", selected: false}
    ];

    $scope.save = function(){
      $scope.students.push({
        Rollno: $scope.new_rollno,
        Name: $scope.new_name,
        Uni: $scope.new_uni
      });

      $scope.new_rollno = $scope.new_name = $scope.new_uni = '';
    };

    $scope.remove = function(){
      $scope.students = filterFilter($scope.students, function (student) {
        return !student.selected;
      });
    };
  }]);
}(angular.module('app', []), angular));
/* Styles go here */

table
{
  width: 100%;

}
table,th,td
{
  border: 1px solid black;
}
.color
{
  background-color: lightgray;
}
.color2
{
  background-color: white;
}
#heading
{
  background-color: black;
  color: white;
}
tr:hover
{

  background-color:darkblue;
  color: white;
  font-weight: bold;
}
#images img
{

  margin-top: 10px;
}
#img1
{
  width: 33.4%;
}
#img2
{
  width: 66%;
  height: 255px;
}
#table1
{
  margin-top: 10px;
}
label
{
  display: block;
  margin-bottom: 5px;
  margin-top: 5px;
}
button
{
  margin-top: 5px;
  padding: 5px;
}
<!DOCTYPE html>
<html ng-app="app">
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.min.js"></script>
<meta charset=utf-8 />
<title>JS Bin</title>
</head>
<body>
    <div>
      <label>Search:</label>
      <input type="search" ng-model="search" placeholder="Enter to Search">
    </div>

    <div id="table1" ng-controller="TableCtrl">
      <table cellpadding="0" border="0" cellspacing="0">
        <tr id="heading">
          <th>Roll NO:</th>
          <th>Student Name:</th>
          <th>University:</th>
        </tr>

        <tr class="color2" ng-repeat="student in students | filter:search | filter:new_search">
          <td>{{student.Rollno}} <input type="checkbox" ng-model="student.selected"> </td>
          <td>{{student.Name}}</td>
          <td>{{student.Uni}} <button ng-click="remove($index)">x </button></td>
        </tr>
      </table>

      <div>
        <label>Rollno:</label>
        <input type="number" ng-model="new_rollno"> <br>
        <label>Name:</label>
        <input type="text" ng-model="new_name"><br>
        <label>University:</label>
        <input type="text" ng-model="new_uni"><br>
        <button ng-click="save()">Save</button>
      </div>

      <div style="float: right; margin-right: 300px;margin-top: -200px;">
        <button ng-click="remove($index)">Remove</button>
      </div>
    </div>
</body>
</html>

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1738621626a4065928.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信