使用onclick by javascript选中复选框?
我陷入了一个非常愚蠢的问题。我正在尝试选择使用表中的循环动态创建的所有复选框。在表格的标题中,我有一个复选框,我想在点击标题中的复选框后选中表格中的所有复选框。 这是我的密码使用onclick by javascript选中复选框?,javascript,Javascript,我陷入了一个非常愚蠢的问题。我正在尝试选择使用表中的循环动态创建的所有复选框。在表格的标题中,我有一个复选框,我想在点击标题中的复选框后选中表格中的所有复选框。 这是我的密码 <table> <thead> <tr> <th class="spacer_100 align_ctr tooltip_trigger"> Change Status <input type="che
<table>
<thead>
<tr>
<th class="spacer_100 align_ctr tooltip_trigger">
Change Status <input type="checkbox" name="sample" onclick="selectAll()">
</th>
</tr>
</thead>
<tbody>
<?php foreach ($users as $user) { ?>
<tr>
<td class="align_ctr" style="text-align: center">
<input type="checkbox" name="current_status[]" value="1"/>
</td>
</tr>
<?php } ?>
</tbody>
</table>
改变状态
以下是javascript代码:
function selectAll() {
var checkboxes = document.getElementsByTagName("input");
for(var i=1; i<checkboxes.length;i++) {
if (checkboxes[i].type == 'checkbox') {
checkboxes[i].checked = 'true';
}
}
}
函数selectAll(){
var复选框=document.getElementsByTagName(“输入”);
对于(var i=1;i它工作正常,但您的代码:
var checkboxes = document.getElementsByTagName("input");
同时选中主复选框,尝试执行以下操作:
var checkboxes = document.getElementsByTagName("input");
for(var i=0; i<checkboxes.length;i++) { //start from 0
if (checkboxes[i].type == 'checkbox' && checkboxes[i].name == 'current_status[]') {
checkboxes[i].checked = 'true';
}
}
var复选框=document.getElementsByTagName(“输入”);
对于(var i=0;i试试这个代码怎么样
改为
Change Status <input type="checkbox" name="sample" onclick="selectAll(this)">
更改状态
和以下功能
function SelectAll(CheckBoxControl){
var i;
for (i=0; i < document.forms[0].elements.length; i++){
if ((document.forms[0].elements[i].type == 'checkbox') &&
(document.forms[0].elements[i].name.indexOf('current_status[]') > -1)){
document.forms[0].elements[i].checked = CheckBoxControl.checked;
}
}
}
功能选择全部(复选框控制){
var i;
对于(i=0;i-1)){
document.forms[0]。元素[i]。checked=CheckBoxControl.checked;
}
}
}
顺便问一下,你的foreach end标签在哪里?我的实际代码中有foreach的右括号,我只是把它放在上面的代码中,但我仍然不确定为什么所有的复选框都没有选中。我正在使用codeigniter,因此我需要做任何更改吗?不,我在javascript函数中使用断点进行了检查n、 它正在正确调用每件事,但我仍然没有看到选中的复选框。是否有可能它选中了复选框,但它没有显示为选中,因为运行此操作后,我需要单击这些复选框两次以使其选中。