checkbox遍历与禁用

HTML代码如下:

<div>    
     <input type="checkbox" name="ckb" value="1" />1    
     <input type="checkbox" name="ckb" value="2" />2    
     <input type="checkbox" name="ckb" value="3" />3    
     <input type="checkbox" name="ckb" value="4" />4    
     <input type="checkbox" name="ckb" value="5" />5    
     <input type="checkbox" name="ckb" value="6" />6    
     <input type="checkbox" name="ckb" value="7" />7    
     <input type="checkbox" name="ckb" value="8" />8    
     <input type="checkbox" name="ckb" value="9" />9    
     <input type="checkbox" name="ckb" value="10" />10   
</div>

JS代码:

//当复选框选中超过六个时,其余未选中的复选框被禁用
var
num = 0; $(":checkbox").each(function(){ if(this.checked == true){ num++; } }); if(num >= 6){ $(":checkbox").each(function(){ //each遍历 if(this.checked == false){ $(this).attr("disabled", "disabled"); //禁用 } }); }else if(num < 6){ $(":checkbox").each(function(){ if(this.checked == false){ $(this).removeAttr("disabled"); //解除禁用 } }); }

了解:

checked

定义和用法

checked 属性设置或返回 checkbox 是否应被选中。

语法

checkboxObject.checked=true|false

说明

该属性保存了 checkbox 的当前状态,不管何时,这个值发生变化的时候,onclick 事件句柄就会触发(也可能触发 onchange 事件句柄)。

实例

下面的例子可设置该 checkbox 的状态:

<html>
<head>
<script type="text/javascript">
function check()
  {
  document.getElementById("check1").checked=true
  }
function uncheck()
  {
  document.getElementById("check1").checked=false
  }
</script>
</head>
<body>

<form>
<input type="checkbox" id="check1" />
<input type="button" onclick="check()" value="Check Checkbox" />
<input type="button" onclick="uncheck()" value="Uncheck Checkbox" />
</form>

</body>
</html>

 

disabled

定义和用法

disabled 属性可设置或返回是否禁用 checkbox。

语法

checkboxObject.disabled=true|false

实例

下面的例子禁用了该 checkbox:

<html>
<head>
<script type="text/javascript">
function disable()
  {
  document.getElementById("check1").disabled=true
  }
</script>
</head>
<body>

<form>
<input type="checkbox" id="check1" />
<input type="button" onclick="disable()" value="Disable Checkbox" />
</form>

</body>
</html>

 

转载于:https://www.cnblogs.com/North-South/p/8952011.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在EasyUI的DataGrid中,我们可以通过定义列的formatter函数来实现根据不同属性值来禁用某些单元格中的复选框。具体来说,我们可以在formatter函数中返回一个`<input>`标签,并给它添加一个`disabled`属性。然后,我们可以使用jQuery的`each()`函数遍DataGrid的所有行和列,并找到我们想要禁用的单元格中的复选框,并将它的`<input>`标签设置为禁用状态。 下面是一个示例代码: ```javascript // 定义DataGrid的columns var columns = [[ {field:'name',title:'Name',width:100}, {field:'age',title:'Age',width:100}, {field:'gender',title:'Gender',width:100}, {field:'married',title:'Married',width:100,formatter: function(value,row,index){ if (row.age >= 18 && row.gender === 'Female'){ // 如果年龄大于等于18且性别为女性,则禁用复选框 return '<input type="checkbox" disabled="disabled">'; } else { return '<input type="checkbox">'; } }} ]]; // 在DataGrid中添加数据后,禁用满足条件的复选框 $('#dg').datagrid('appendRow',{ name:'John', age:20, gender:'Male', married:false }).datagrid('appendRow',{ name:'Jane', age:16, gender:'Female', married:true }).datagrid('getPanel').find('input[type="checkbox"][disabled="disabled"]').each(function(){ $(this).closest('td').css('opacity', '0.5'); }); ``` 在上面的代码中,我们定义了一个包含四列的DataGrid,分别是`Name`、`Age`、`Gender`和`Married`。在`Married`列的formatter函数中,我们判断行的`age`属性是否大于等于18且`gender`属性是否为`Female`,如果满足,则返回一个禁用状态的`<input>`标签。 接着,我们向DataGrid中添加了两行数据,并且使用`getPanel()`函数获取DataGrid的面板,然后使用`find()`函数查找所有禁用状态的复选框,并使用`each()`函数遍它们,并将它们的父元素`<td>`的不透明度设置为0.5,从而禁用它们。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值