通过Javascript或控制台选中所有复选框

通过Javascript或控制台选中所有复选框,javascript,html,checkbox,dom-events,Javascript,Html,Checkbox,Dom Events,我的网页上有100个复选框。出于测试目的,我想勾选所有这些框,但手动单击很耗时。有没有可能的办法让他们打勾 可能是一个JavaScript或Chrome控制台窗口,任何东西?纯JS方法,不要使用jQuery。。做这么琐碎的事太傻了 [].forEach.call( document.querySelectorAll('input[type="checkbox"]'),function(el){ el.checked=true; } );​ 要在任何网页上使用它,您可以

我的网页上有100个复选框。出于测试目的,我想勾选所有这些框,但手动单击很耗时。有没有可能的办法让他们打勾


可能是一个JavaScript或Chrome控制台窗口,任何东西?

纯JS方法,不要使用jQuery。。做这么琐碎的事太傻了

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

要在任何网页上使用它,您可以将其粘贴到地址栏中

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

然后把它拖到你的书签上,你就有了一个bookmarklet。只要在需要在页面上使用它时单击它。

querySelectorAll
是您不需要jQuery的最佳选择

var ele = document.querySelectorAll("input[type=checkbox]");
for(var i=0;i<ele.length;i++){
    ele[i].checked = true;
}
//Done.
var ele=document.querySelectorAll(“输入[type=checkbox]”);

对于(var i=0;i来说,最直接的方法是获取所有输入,只过滤复选框,然后设置checked属性

var allInputs = document.getElementsByTagName("input");
for (var i = 0, max = allInputs.length; i < max; i++){
    if (allInputs[i].type === 'checkbox')
        allInputs[i].checked = true;
}
或者正如法布里西奥所指出的:

$(":checkbox").prop("checked", true);
功能选择全部(元素)
{
对于(i=0;i

单击按钮调用此方法并传递元素的名称(复选框名称应相同)。

此JS代码将选中页面中的所有复选框:

var a = document.querySelectorAll('input[type="checkbox"]');
for (var i=0; i<a.length; i++)
    a[i].checked = true;​
var a=document.querySelectorAll('input[type=“checkbox”]”);
对于(var i=0;i

然后,您所要做的就是使用它创建一个bookmarklet,例如,使用,它将生成以下bookmarklet代码:

javascript:var a=document.querySelectorAll('input[type="checkbox"]');for(var i=0;i<a.length;i++)a[i].checked=true;%E2%80%8B
javascript:var a=document.querySelectorAll('input[type=“checkbox”]”);for(var i=0;i通过使用,就这么简单

$('input:checkbox').each(function () {
   // alert(this);
   $(this).attr('checked', true);
  });
或者干脆用

$('input:checkbox').prop('checked', true);// use the property

多个全选框&取消全选框 您只需更改标记“name”即可更改其图灵开/关

<FORM>
    <input type="checkbox" name="item0[]" onclick="CheckAll(this)" />
    <input type="checkbox" name="item0[]" value="1" />
    <input type="checkbox" name="item0[]" value="2" />
    <input type="checkbox" name="item0[]" value="3" />
    <br>
    <input type="checkbox" name="item1[]" onclick="CheckAll(this)" />
    <input type="checkbox" name="item1[]" value="a" />
    <input type="checkbox" name="item1[]" value="b" />
    <input type="checkbox" name="item1[]" value="c" />
    <br>
    <input type="checkbox" name="item2" onclick="CheckAll(this)" />
    <input type="checkbox" name="item2" value="a1" />
    <input type="checkbox" name="item2" value="b2" />
    <input type="checkbox" name="item2" value="bc" />
</FORM>

<script>
    function CheckAll(x)
    {
        var allInputs = document.getElementsByName(x.name);
        for (var i = 0, max = allInputs.length; i < max; i++) 
        {
            if (allInputs[i].type == 'checkbox')
            if (x.checked == true)
                allInputs[i].checked = true;
            else
                allInputs[i].checked = false;
        }
    }
</script>



函数CheckAll(x) { var allInputs=document.getElementsByName(x.name); 对于(变量i=0,max=allInputs.length;i
我提供了这个问题的答案

简而言之,您可以通过以下方式从开发工具控制台(F12)执行此操作:

$$('input').map(i=>i.checked=true)


$$('input[type=“checkbox”').map(i=>i.checked=true)
只需将以下一行程序之一粘贴到浏览器控制台:

勾选所有复选框:

document.querySelectorAll('input[type=“checkbox”]”)。forEach(e=>e.checked=true);

取消勾选所有复选框:


document.querySelectorAll('input[type=“checkbox”]”)。forEach(e=>e.checked=false);

纯JS格式的bookmarklet可能?@fabriciomatté-我不知道它是什么?你能解释一下吗?7个答案。正如我所料,这里有足够的解释:p无论如何,我提交了我自己的答案,并附有详细的解释/说明。很可能是针对salesforce中的字段级权限。+1:注意:使用的函数:。兼容性注意:
forEach
直到IE中的版本9才实现,
document.querySelectorAll
在版本8中实现。@Zeta yeah在中不起作用IE@Loktar:读到“不要使用jQuery”这句话很奇怪,因为这么琐碎的事情太傻了。不是吗?@Talha不知道你的意思吗?但是jQuery对某些事情来说太过分了像这样。不需要包含2000行代码来选中一些复选框。@Loktar我如何才能从众多复选框中只选中一个特定复选框?代码行看起来像
(还有更多的复选框,其值从2到13更高)。这是
$(“[type='checkbox']”的简写形式)
同样如此。@Derek-你说得对-这就是为什么我首先给出纯JS答案:)使用crunchinator将上面的代码转换为bookmarklet(不幸的是“let不能处理框架,幸运的是Firefox可以“仅显示此框架”):您可以使用javascript:
并将其插入地址栏,然后单击return,它工作得非常好!我们希望使用任何浏览器的console选项卡来完成此操作,而不使用任何按钮调用。@DadhichSourav,根据您查询中所述的问题,您的查询中有“或”。这意味着任何方法都可以(任何方法)。我发现使用Chrome控制台,.prop('checked',true)明显地打开了复选框..attr('checked',true)没有。我不明白,因为.attr经常被建议,但它不起作用。
$('input:checkbox').prop('checked', true);// use the property
 $('input:checkbox').attr('checked', true); // by using the attribute
<FORM>
    <input type="checkbox" name="item0[]" onclick="CheckAll(this)" />
    <input type="checkbox" name="item0[]" value="1" />
    <input type="checkbox" name="item0[]" value="2" />
    <input type="checkbox" name="item0[]" value="3" />
    <br>
    <input type="checkbox" name="item1[]" onclick="CheckAll(this)" />
    <input type="checkbox" name="item1[]" value="a" />
    <input type="checkbox" name="item1[]" value="b" />
    <input type="checkbox" name="item1[]" value="c" />
    <br>
    <input type="checkbox" name="item2" onclick="CheckAll(this)" />
    <input type="checkbox" name="item2" value="a1" />
    <input type="checkbox" name="item2" value="b2" />
    <input type="checkbox" name="item2" value="bc" />
</FORM>

<script>
    function CheckAll(x)
    {
        var allInputs = document.getElementsByName(x.name);
        for (var i = 0, max = allInputs.length; i < max; i++) 
        {
            if (allInputs[i].type == 'checkbox')
            if (x.checked == true)
                allInputs[i].checked = true;
            else
                allInputs[i].checked = false;
        }
    }
</script>