我使用的名称为“selectedids []”的复选框,我正在尝试使用JavaScript选中所有复选框。代码无效。当我将复选框的名称更改为“selectedids”时,它可以正常工作,但我无法这样做,因为我需要在POSTED页面上选择的所有ID。
复选框如下:
foreach($rows as $row)
{
<input type="checkbox" name="selectedids[]" value="<?php echo $row['id']; ?>" class="checkbox" />
........
........
}
Java脚本功能如下:
function SetAllCheckBoxes(CheckValue)
{
var CheckValue=true;
if(!document.forms['main'])
return;
var objCheckBoxes = document.forms['main'].elements['selectedids[]'];
if(!objCheckBoxes)
return;
var countCheckBoxes = objCheckBoxes.length;
if(!countCheckBoxes)
objCheckBoxes.checked = CheckValue;
else
// set the check value for all check boxes
for(var i = 0; i < countCheckBoxes; i++)
objCheckBoxes[i].checked = CheckValue;
}
请帮帮我......
提前致谢.......
答案 0 :(得分:3)
您是否可以选择使用jQuery?如果是这样,那么你可以做类似的事情:
$(':checkbox').each(function(){
$(this).attr('checked',true);
});
可能可以尝试:
$(':checkbox').attr('checked',true);
或者,如果您只是想确保仅在页面首次加载时检查所有框,您可以让您的php创建复选框包括“CHECKED”。即。
<input type='checkbox' name='selectedids[]' value='value' CHECKED>
已更新使用:每条评论复选框
答案 1 :(得分:2)
为什么不按ID选择它们? e.g。
var a=0;
while(document.getElementById('mycheckbox_'+a))document.getElementById('mycheckbox_'+a).checked=true;
答案 2 :(得分:1)
如果是我,我会使用复选框的类来识别它们,并使用一些jQuery。 这可行:
$('input.checkbox').each(function(){$(this).attr('checked',true); });
它会将所有带有“checkbox”类的复选框设置为true。
被打败了!