Javascript选择页面上除第一个复选框外的所有复选框

Javascript to select all but the first checkbox on a page?

本文关键字:复选框 第一个 选择 Javascript      更新时间:2023-09-26

我希望能够自动标记页面上的所有复选框,除了第一个。

我找到了一个javascript代码片段,选择所有的复选框,目前正在为此目的工作,但我不希望它选择第一个复选框…

[].forEach.call(document.querySelectorAll('input[type="checkbox"]'), function (el) {el.checked = true});

我在上面的代码片段中尝试了各种If语句,所有这些语句都中断了这个过程。

任何帮助将不胜感激。注意:(我将其实现为书签)

回调函数可以接受第二个参数,即index。因此,添加一个条件index !== 0,即function (el, index) { if (index !== 0) { el.checked = true; } }

甚至function (el, index) { el.checked = index !== 0; }

您可以更改查询选择器以添加:not(:first-child)

[].forEach.call(document.querySelectorAll('input[type="checkbox"]:not(:first-child)'), function (el) {el.checked = true});

小提琴:https://jsfiddle.net/zLhhyy7m/2/

或使用jQuery:

$('input[type="checkbox"]:not(:first)').attr("checked",true);

小提琴:https://jsfiddle.net/zLhhyy7m/1/

var checkboxes = document.querySelectorAll('input[type="checkbox"]');
for (var i = 0; i < checkboxes.length; ++i) {
    if (i)
        checkboxes[i].checked = true;
}