javascript - 我试图在选中父项时选中所有子项复选框。但这只能有效一次!当我下次尝试时, child 不会被检查吗?

标签 javascript jquery html

$(document).ready(function (e) {
    $('.links > input').change(function () {
        if ($(this).is(':checked')) {
            $(this).parent().children('.subLinks').children('.subLinkCheck').children().attr('checked', true);
        } else 
          $(this).parent().children('.subLinks').children('.subLinkCheck').children().attr('checked', false);;
    });
});

第一次运行良好。当我取消选中子复选框然后单击父复选框时,它会失败,

这是 HTML 内容

<ul id="mainLink">
    <li class="links">
        <input type="checkbox" />Interactive Community
        <ul class="subLinks">
            <li class="subLinkCheck">
                <input class="1" type="checkbox" />Usability Testing</li>
            <li class="subLinkCheck">
                <input type="checkbox" />HFI Certification</li>
        </ul>
    </li>
    <li class="links">
        <input type="checkbox" />Heuristic Evaluations
        <ul class="subLinks">
            <li class="subLinkCheck">
                <input type="checkbox" />Usability Testing</li>
            <li class="subLinkCheck">
                <input type="checkbox" />HFI Certification</li>
        </ul>
    </li>
</ul>

最佳答案

使用.prop()而不是 .attr()

演示:http://jsfiddle.net/Jrrnj/

关于javascript - 我试图在选中父项时选中所有子项复选框。但这只能有效一次!当我下次尝试时, child 不会被检查吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16189534/

相关文章:

html - 2007/10 年与其他所有内容相比,电子邮件图像未对齐

javascript - 依赖 Function.prototype.toString 安全吗?

javascript - Jquery函数在按钮悬停时从div添加/删除类

html - 将两个 div 与动态宽度对齐,并将嵌套表格与 100% 宽度对齐

javascript - html5 : link to the #id of a div at a certain point on the page

javascript - 将 jquery datetimepicker 呈现为模式的问题

javascript - 无法调用外部 JavaScript 函数

javascript - jQuery Slider - 变得更快

javascript - 为什么 Angular 2 看不到动态创建的选择器?

javascript - 无法在首页加载时使用 HTML5 和 Google Chrome 中的 getUserMedia() 从网络摄像头拍照