[すべて選択]チェックボックスに続いて、データベースからの各レコードに対応する個々のチェックボックスがあります。ユーザーが[すべて選択]をオンにすると、すべてのチェックボックスが選択され、その逆になるようにJavaScript関数を実装するにはどうすればよいですか。
質問する
2213 次
4 に答える
1
最初にすべて選択チェックボックスにIDを与え、「selectall」と言って、他のすべてのチェックボックスにallcheckとしてクラスを与え、このコードを使用してみてください。
$("#selectall").click(function() {
if (!$(this).is(':checked'))
{
$('.allcheck').each(function(){
$(this).prop("checked", false);
});
}
else
{
$('.allcheck').each(function(){
$(this).prop("checked", true);
});
}
});
ユーザーがボックスのチェックを外すと、すべてがチェックされていないはずです。これも期待される機能だと思います
注:-jqueryを使用していると仮定して、この回答を提供しました
于 2012-09-12T05:27:41.790 に答える
1
これを試して:
function checkAll(id) {
var checkboxCollection = document.getElementById('<%= chkint.ClientID %>').getElementsByTagName('input');
for (var i = 0; i < checkboxCollection.length; i++) {
if (checkboxCollection[i].type.toString().toLowerCase() == "checkbox") {
checkboxCollection[i].checked = id.checked;
}
}
}
function select() {
var count = 0;
var chkSelectAll = document.getElementById('<%= selectall.ClientID %>');
var chkList = document.getElementById('<%= chkint.ClientID %>').getElementsByTagName("input");
for (var i = 0; i < chkList.length; i++) {
if (chkList[i].checked == true) {
count++;
}
}
if (count == chkList.length)
chkSelectAll.checked = true;
else
chkSelectAll.checked = false;
}
このコードでchkint
は、 は Checkboxlist の ID でありselectall
、 は selectall チェックボックスの ID です。
于 2012-09-12T05:31:35.970 に答える
0
Aravind と同様に、jQuery を使用すると、コンテナー内のすべてのチェックボックスをグループ化して ID を与え、SelectAll チェックボックスに ID を与えることができます。そのコードが簡単になった後、フィドルについてはこちらも参照してください:
$("#selectall").click(function() {
if ($(this).is(':checked'))
$("#selectallcontainer :checkbox").not(this).attr('checked', true);
else
$("#selectallcontainer :checkbox").not(this).attr('checked', false);
});
于 2012-09-12T08:02:16.203 に答える
0
純粋な JavaScript ソリューションは次のとおりです。
関数を「すべて選択」チェックボックスの onClick イベントにアタッチし、残りのオプションを次のように div でラップするだけです。
<script>
function checkAll() {
var checkbox_options = document.getElementById("checkbox_options");
var checkbox_all = document.getElementById("checkbox_all");
var checkboxes = checkbox_options.getElementsByTagName("input");
for (i = 0; i < checkboxes.length; i++) {
checkboxes[i].checked = checkbox_all.checked;
}
}
</script>
<label><input id="checkbox_all" type="checkbox" onclick="checkAll()" />Select All</label><br />
<div id="checkbox_options">
<label><input type="checkbox" />CheckBox1</label><br />
<label><input type="checkbox" />CheckBox2</label><br />
<label><input type="checkbox" />CheckBox3</label><br />
</div>
于 2012-09-12T08:54:32.380 に答える