问题选择多个复选框

时间:2011-02-09 15:03:20

标签: php javascript html

我使用的名称为“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;
}

请帮帮我......

提前致谢.......

3 个答案:

答案 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。


被打败了!