Webページに100個のチェックボックスがあります。テストのために、これらすべてのボックスにチェックを入れたいのですが、手動でクリックするのは時間がかかります。それらをチェックする方法はありますか?
JavaScriptまたはChromeコンソールウィンドウ、何か?
最も直接的な方法は、すべての入力を取得し、チェックボックスのみをフィルタリングして、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;
}
たまたま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;
}
);
任意のWebページで使用するには、これをアドレスバーに貼り付けます。
javascript:[].forEach.call(document.querySelectorAll('input[type="checkbox"]'),function(el){el.checked=true});
それをブックマークにドラッグすると、ブックマークレットができます。ページで使用する必要があるときはいつでもクリックしてください。
jquery を使用して、簡単に
$('input:checkbox').each(function () {
// alert(this);
$(this).attr('checked', true);
});
または単に使用する
$('input:checkbox').prop('checked', true);// use the property
OR
$('input:checkbox').attr('checked', true); // by using the attribute
jQueryが必要ない場合は、querySelectorAll
が最適です。
var ele = document.querySelectorAll("input[type=checkbox]");
for(var i=0;i<ele.length;i++){
ele[i].checked = true;
}
//Done.
変更する必要があるのは、タグ '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>
このJSコードは、ページ内のすべてのチェックボックスをチェックします。
var a = document.querySelectorAll('input[type="checkbox"]');
for (var i=0; i<a.length; i++)
a[i].checked = true;
あとは、 this bookmarklet maker でブックマークレットを作成するだけで、このブックマークレットコードが生成されます。
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)
function selectAll(elem)
{
for (i = 0; i < elem.length; i++)
elem[i].checked = true ;
}
ボタンをクリックすると、このメソッドが呼び出され、要素の名前が渡されます(チェックボックス-すべて同じ名前にする必要があります)。