如果选中,请从列表中删除项目
Remove item from the list if checked
我有一个带复选框的项目列表,还有一个删除按钮。只有选中列表中的项目时,删除才有效。
例如,我有
$scope.list = [{
name:'Groceries',
check: false
}, {
name:'Laundry',
check:false
},
{
name:'Cleaning',
check:false
}];
在我的HTML 中
<ul>
<li ng-repeat="values in list">
<input type="checkbox" ng-model="values.check"/>
<span>{{values.name}}</span>
</li>
</ul>
<button>Delete</button>
这只是我让控制器声明并用ng应用程序引导的代码片段
您应该使用Angular原生指令ng-checked
<input type="checkbox" ng-checked="values.check"/>
您可以为此使用过滤器:
HTML
<body ng-app="app" ng-controller='Ctrl'>
<ul>
<li ng-repeat="values in list">
<input type="checkbox" ng-model="values.check"/>
<span>{{values.name}}</span>
</li>
</ul>
<button ng-click="remove((list | filter:{check:true}))">Delete</button>
</body>
控制器
$scope.remove = function(items) {
alert('removing ' + items.length + ' items');
$scope.list = $filter('filter')($scope.list, { check: false});
}
演示Plunker
<body ng-controller="MyController">
<ul>
<li ng-repeat="values in list">
<input type="checkbox" ng-model="values.check" />
<span>{{values.name}}</span>
</li>
</ul>
<button ng-click="deleteItems()">Delete</button>
</body>
控制器:
myApp.controller('MyController', function($scope, $filter) {
$scope.list = [ {
name : 'Groceries',
check : false
}, {
name : 'Laundry',
check : false
}, {
name : 'Cleaning',
check : false
} ];
$scope.deleteItems = function() {
$scope.list = $filter('filter')($scope.list, {check : false})
}
})
相关文章:
- 如何在NativeScript中从列表中删除项目时设置动画
- 在复选框取消选中事件中从HTML下拉列表中删除项目
- 如何在 Angular 中使用拼接从列表中删除项目
- 如何在 ReactJS 中使用单击事件从列表中删除项目
- 从选择列表中删除项目 (Internet Explorer 10)
- Telerik 剑道下拉列表删除项目
- 使用 iCheck 回调和 jquery 从列表中删除项目
- 使用 JavaScript 和 REST 从 SharePoint 列表中删除项目
- 在 JavaScript 中通过 innerHTML 从列表中删除项目
- KnockoutJS从可观察数组中删除项目.Item 是 ul 中的列表项,由 foreach 生成
- 从列表中删除项目,淘汰.js
- 从列表中删除项目时出现问题
- 使用Javascript从待办事项列表中删除项目
- 删除django中列表中项目的引号以获得高图表
- 从客户端脚本的ASP列表框中删除项目
- 如果选中,请从列表中删除项目
- 从动态html列表中删除项目
- 从列表中添加/删除项目并更新总数
- 在页面加载时从下拉列表中删除项目(没有jquery)
- jquery与react.js从列表中删除项目