首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >带角的复选框和取消复选框

带角的复选框和取消复选框
EN

Stack Overflow用户
提问于 2017-02-17 06:58:31
回答 2查看 741关注 0票数 0

在我的表单中,所有这些列都有一个带有复选框的表。我有3个<tr>,每个<tr>都有它的ng-repeate调用webservice来显示克隆(Json数据)。当我单击复选框时,我生成一个js数组,该数组使用以下代码记录id:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
checkoptions (array, model) {
angular.forEach(array, (value, key) => {
  if (array[key].checked) {
    model.push(array[key].id)
  }
})

在HTML中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<tr ng-repeat="developer in $ctrl.developers">
    <td>{{developer.label}}</td>
    <td>
      <input type="checkbox" id="{{developer.id}}"
          ng-change="$ctrl.checkoptions($ctrl.developers,$ctrl.employees.developers)" 
             ng-model="developer.checked">
                <label for="{{developer.id}}"></label>
     </td>

它可以工作,但问题是,当我取消选中复选框时,它不会从js数组中删除。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-02-17 08:37:44

我包括了一个从数组中删除的其他部分:http://jsfiddle.net/x9m1nqvp/1/

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
      $scope.checkoptions = function (array, model) {
        angular.forEach(array, (value, key) => {
          if (array[key].checked) {
            var index = model.indexOf(array[key].id);
            if(index == -1)
                model.push(array[key].id)
          }
          else {
            var index = model.indexOf(array[key].id);
            if(index >=0)
                model.splice(index, 1);
          }
      })
票数 0
EN

Stack Overflow用户

发布于 2017-02-17 09:53:46

虽然Everton的答案完成了任务,但是每次单个复选框更改状态时,检查数组中的每一项都是有点多余的。您不需要对数组中的每个项目进行更新。

下面是一个示例,其中只从employees.developers数组中添加或删除实际切换的复选框(注意:不需要冗余的angular.forEach):

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$scope.checkoption = function (developer){
    if (developer.checked) {
        var index = $scope.employees.developers.indexOf(developer.id);
        if(index == -1)
            $scope.employees.developers.push(developer.id)
    } else {
        var index = $scope.employees.developers.indexOf(developer.id);
        if(index >=0)
            $scope.employees.developers.splice(index, 1);
    }
}

以及如何在html中使用:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<tr ng-repeat="developer in developers">
    <td>{{developer.label}}</td>
    <td>
        <input type="checkbox" id="{{developer.id}}"
            ng-change="checkoption(developer)" 
            ng-model="developer.checked">
        <label for="{{developer.id}}"></label>
    </td>
</tr>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42300988

复制
相关文章
JS控制批量选择/取消复选框
场景应用:在后台分页输出查询数据(如文章、评论),往往需要进行批量删除/审核等操作。后端程序需要读取操作的ID集合进行批量处理。而前端批量选择传入ID是最方便的使用方式。而批量传入通过使用复选框的[]方式传入数组给后端就是最便捷的办法了。直接上代码:
世纪访客
2018/08/02
9.7K0
JS控制批量选择/取消复选框
如何实现复选框的全选和取消全选效果
如何实现复选框的全选和取消全选效果: 在很多网站都有这样的功能,当点击一个全选按钮之后,所有的复选框都会被选中,再点击之后会取消全选,功能非常的人性化,可以省却很多人力,下面就简单介绍一下JS如何实现此功能,代码实例如下:
全栈程序员站长
2022/07/15
2.3K0
Vue 复选框 checkbox 全选与取消全选
按照jQuery的思想来做的话,要选中全选checkbox和所有的checkbox项,分别注册选中事件,判断选中状态来给相关的checkbox设置对应的状态,这就涉及到很多的dom操作。 下面就看一下vue数据驱动dom的思想来实现这一功能。
sunonzj
2022/06/21
2.7K0
Vue 复选框 checkbox 全选与取消全选
PyQt 自定义控件--带搜索和全选功能的复选框
本篇的例子实现了一个带搜索和全选功能的复选框。搜索时不区分大小写。可通过"/"设置搜索多个内容。按回车键开始搜索。
用户6021899
2023/09/10
7460
PyQt 自定义控件--带搜索和全选功能的复选框
JS如何实现勾选全部复选框和不全选复选框
在一些后台管理系统里面,针对全选,复选框是一个很常见的操作,复选框可以执行多项选择的一种控件,有时,为了方便用户选中所有的复选框,网页界面
itclanCoder
2023/02/26
6.5K0
JS如何实现勾选全部复选框和不全选复选框
按钮和复选框控件
本篇文章介绍Android SDK中的按钮和复选框控件。按钮可以分为多种,例如普通按钮(Button)、图像按钮(ImageButton)、选项按钮(RadioButton)、复选框(CheckBox)等
小小工匠
2021/08/16
1.2K0
下拉复选框
最近在项目开发中,有的地方用到了下拉复选框,于是再网上找了一下,有很多种写法,但自己感觉不是很好,又不想用插件,因为感觉引入的js太大,功能太繁杂,于是决定自己写一个小demo,效果如下:
ProsperLee
2018/10/24
4.4K0
下拉复选框
ElementUI el-checkbox 点击Label不取消复选框的选中状态
在点击label的时候不取消复选框的状态 实现 将change事件改为click事件 <div class="grid-content bg-purple">
彼岸舞
2021/06/21
4.4K0
ElementUI el-checkbox 点击Label不取消复选框的选中状态
全选-复选框/单选
效果是其次的,需要注意的是,向后端传递具体的数据,最后把需要的字段,数据传递给后端就可以了的
itclanCoder
2021/11/30
3K0
Silverlight Telerik控件学习:带CheckBox复选框的树形TreeView控件
在web开发中,带checkbox的tree是一个很有用的东东,比如权限选择、分类管理,如果不用sl,单纯用js+css实现是很复杂的,有了SL之后,就变得很轻松了 解决方案一: 利用Silvelright ToolKit(微软的开源项目),项目地址http://silverlight.codeplex.com/ 在线演示地址:http://silverlight.net/content/samples/sl4/toolkitcontrolsamples/run/default.html 解决方案二
菩提树下的杨过
2018/01/23
2.1K0
Silverlight Telerik控件学习:带CheckBox复选框的树形TreeView控件
按钮随复选框选中与取消变换样式 原
//$("input:checkbox[value='1']").attr("checked","checked"); //首先根据后台传进来的value值来设置初始状态为选择还是不选中,如果value为1设置checked为true,注意true不要加引号,并找到最后一列改变class,如果值为0 改变class与html内容 //为checkbox加change事件 如果存在checked属性执行更换class,变化内容,设置checked为false,如果不存在checked属性则执行相应的代码。注意if里面要if($(this).attr("checked")不能写成if($(this).attr("checked")==true) 
tianyawhl
2019/04/04
1.4K0
8、单选按钮(JRadioButton)和复选框(JCheckBox)
单选按钮(JRadioButton)和复选框(JCheckBox)       实现一个单选按钮(或复选框),此按钮项可被选择或取消选择,并显示其状态。JRadioButton对象与ButtonGro
YGingko
2017/12/28
1.7K0
python 复选框 checkbutton
"create a bar of check buttons that run dialog demos"
用户5760343
2022/05/13
1.3K0
Pyqt5自定义控件--带全选功能的复选框
本篇的例子实现了一个带全选功能的复选框: #自定义控件--实现了一个带全选功能的复选框 import sys from PyQt5.QtWidgets import QApplication, QLi
用户6021899
2020/03/11
4.1K0
Pyqt5自定义控件--带全选功能的复选框
HTML复选框_HTMLcheckbox代码
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/167014.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/20
2.2K0
HTML复选框_HTMLcheckbox代码
SeleniumWebDriver处理复选框CheckBox和单选按钮RadioButton
使用网页http://demo.guru99.com/test/radio.html作为练习,如下: 使用radio1.click() 切换到Option1单选按钮; 使用radio2.click() 切换到Option2单选按钮,取消选中Option1 ; 代码如下图所示:
软测小生
2019/09/10
3.7K0
SeleniumWebDriver处理复选框CheckBox和单选按钮RadioButton
使用复选框控制条件格式
我们可以使用条件格式来实现。选择A2:C20,单击功能区“开始”选项卡“样式”组中的“条件格式——新建规则”。在“新建格式规则”对话框中,选择“使用公式确定要设置格式的单元格”,在“为符合此公式的值设置格式”中输入:
fanjy
2022/03/09
2.3K0
使用复选框控制条件格式
微信小程序|复选框
复选框是一种可同时选中多项的基础控件,也是基于计算机语言的编程代码框架,它的作用是用鼠标点击进行操作,来完成选中多个目标。复选框,用方框表示。“复”表示两个或两个以上,“复选”表示可以选择两个或两个以上多个选项。复选框同单选框不同,单选框是圆的,只能选一个选项,不能选两个或两个以上多个选项。如下就是典型的复选框样式:
算法与编程之美
2020/03/26
2K0
微信小程序|复选框
点击加载更多

相似问题

角:[(ngModel)]取消复选框

20

取消选中角复选框

12

带输入复选框的表复选框/取消选中

10

wxPython复选框和取消复选框

12

带输入字段和复选框的角垫表

21
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文