我的网页上有 100 个复选框。出于测试目的,我想勾选所有这些框,但手动单击非常耗时。有没有办法让他们打勾?
也许是 JavaScript 或 Chrome 控制台窗口,什么?
我的网页上有 100 个复选框。出于测试目的,我想勾选所有这些框,但手动单击非常耗时。有没有办法让他们打勾?
也许是 JavaScript 或 Chrome 控制台窗口,什么?
最直接的方法是获取所有输入,仅过滤掉复选框,然后设置选中的属性。
var allInputs = document.getElementsByTagName("input");
for (var i = 0, max = allInputs.length; i < max; i++){
if (allInputs[i].type === 'checkbox')
allInputs[i].checked = true;
}
如果你碰巧在使用 jQuery——我并不是说你应该开始勾选所有复选框进行测试——你可以简单地做
$("input[type='checkbox']").prop("checked", true);
或者正如 Fabricio 指出的那样:
$(":checkbox").prop("checked", true);
纯 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});
然后将其拖到您的书签中,您就有了一个书签。只要您需要在页面上使用它,只需单击它即可。
querySelectorAll
如果您不想要 jQuery,这里是您的最佳选择!
var ele = document.querySelectorAll("input[type=checkbox]");
for(var i=0;i<ele.length;i++){
ele[i].checked = true;
}
//Done.
通过使用jquery,就这么简单
$('input:checkbox').each(function () {
// alert(this);
$(this).attr('checked', true);
});
或者干脆使用
$('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>
此 JS 代码将检查您页面中的所有复选框:
var a = document.querySelectorAll('input[type="checkbox"]');
for (var i=0; i<a.length; i++)
a[i].checked = true;
然后你所要做的就是用它创建一个书签,比如说,用这个书签制造商,它会生成这个书签代码:
javascript:var a=document.querySelectorAll('input[type="checkbox"]');for(var i=0;i<a.length;i++)a[i].checked=true;%E2%80%8B
只需将此 URI 添加到书签工具栏中的书签,然后您只需在需要选中页面中的所有复选框时单击它即可。=]
我在通过开发人员工具检查页面中的所有复选框中提供了这个问题的答案
简而言之,您可以通过以下方式从开发工具控制台 (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);
function selectAll(elem)
{
for (i = 0; i < elem.length; i++)
elem[i].checked = true ;
}
在单击按钮时调用此方法并传递元素的名称(复选框 - 它们都应该同名)。