jquery - 制作一个全选jquery函数

标签 jquery checkbox selectall

我有一个从网站获得的全选 jquery 脚本(我忘记了链接).. 确实,该脚本没有任何问题。有用。但是,我打算将其重写为一个函数。只是,我被困住了。

这是 ori 脚本

    $("#selectall").click(function () {
     $('.case').attr('checked', this.checked);
});

$(".case").click(function(){
    if($(".case").length == $(".case:checked").length) {
        $("#selectall").attr("checked", "checked");
    } else {
        $("#selectall").removeAttr("checked");
    }
});

这是我编写的函数:

function klikAll(id){
   var header = $('#' + id);
   $('.foo_' + hid).attr('checked', header.prop('checked') );
}

function klikSub(hid){
   var heder = $('#' + hid);
   var subheder = $('.foo_' + hid);
   var subhederc = $('.foo_' + hid + ':checked');

   if(subheder.length == subhederc.length) {
      heder.attr("checked", "checked");
   } else {
      heder.removeAttr("checked");
   }
}

问题是,该功能完全不起作用..在jsfiddle中,我重写了它http://jsfiddle.net/iamthom/aCJSY/6/ 。任何人都可以给我一个线索,我应该修复哪一部分?或者我的功能出了什么问题??

最佳答案

请检查一下

<强> DEMO

代码

<script type="text/javascript">
function klikAll(id) {
    var header = $('#' + id);
    $('.foo_' + id).attr('checked', header.prop('checked'));
}

function klikSub(hid) {
    var heder = $('#' + hid);
    var subheder = $('.foo_' + hid);
    var subhederc = $('.foo_' + hid + ':checked');

    if (subheder.length == subhederc.length) {
        heder.attr("checked", "checked");
    } else {
        heder.removeAttr("checked");
    }
}
</script>

将您的函数放在 <script> 内 block 。

关于jquery - 制作一个全选jquery函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11200874/

相关文章:

javascript - enter() 选择上的 extra select() 究竟做了什么?

javascript - 多个 HTML5 音频播放器。单击另一个音频实例时停止播放其他音频实例

javascript - 双击 iText 的编辑器控件

不允许将导航项放置在右侧的 jquery 对象

javascript - 阻止访问使用数据 URI : accessing a cross-origin frame error 呈现的 SVG 文档

javascript - 单击下拉菜单时将复选框设置为未选中

javascript - 使用类取消选中 Javascript 中的单选按钮

javascript - 选中时如何启用复选框?

delphi - Web 浏览器和 OLECMDID_SELECTALL

ios - 多选问题并在 UITableview 中快速选择全部