Bootstrap开源包中checkbox的全选和反选

本文介绍了在Bootstrap环境下,遇到全选checkbox功能失效的问题及其解决方案。通过分析Chrome浏览器控制台显示的源码,发现多出的`<div class="checker">`标签导致了功能异常。修复方法是更新js脚本,使用`$(this).parent().addClass/removeClass("checked")`来处理选中状态。

html部分代码:

<tr>
<th class="text-center" id="choose"><input type="checkbox" id="checked_all" /></th>

</tr>

  . . .

<tr>

<td class="text-center"><input type="checkbox" class="checked_pro" name="checkbox" /></td>

</tr>

js脚本:

function checkedAction(){
  if($("#checked_all").is(":checked")){
  $(".checked_pro").attr("checked","checked");
  }else{
  $(".checked_pro").removeAttr("checked");
  }
}

发现全选没有任何效果。

在Chrome浏览器控制台上看到的源码却多了一些标签:

<tr>

<td class="text-center">
<div class="checker">

<span class="">

<input type="checkbox" class="checked_pro" name="checkbox" />

</span>

</div>

</td>

</tr>

所以修改js脚本即可:

function checkedAction(){
$("input[type='checkbox']").each(function() {
if($("#checked_all").is(":checked")) {
$(".checked_per_pro").attr("checked","checked");
$(this).parent().addClass("checked");
}else{
$(".checked_per_pro").removeAttr("checked");
$(this).parent().removeClass("checked");
}
});
}

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值