-5

这是,

  1. 如果选中标题复选框,我需要在表格的第一列中启用所有复选框。
  2. 我需要将一个或多个或所有选定复选框的行 ID 传递给 jQuery 函数
4

2 回答 2

0

针对您的问题的非常恶心的 jQuery 解决方案:http: //briancray.com/posts/check-all-jquery-javascript

当您遍历表中的每个 tr 时,请执行以下操作:

// assume you have an array like:
$array = array(
     '0' => array(
            'name' => 'bob',
            'pet' => 'dog'
     ),
     '1' => array(
            'name' => 'josh',
            'pet' => 'cat'
     ), 
 );
for($i=0;$i<count($array);$i++) { ?>
<td><input type="checkbox" name="rows[<?=$i?>]" /><td><?=$array[$i]['name']?></td><td><?=$array[$i]['pet'];?></td>
<? } ?>

发布后,您将在帖子中获得一个带有行索引的数组,您可以进一步迭代该数组。

如果您想要更多示例代码,我很乐意提供一些。不过,这应该可以帮助您入门。:)

于 2013-01-02T09:18:47.377 回答
0

对 html 使用这种类型的结构

<fieldset>
        <!-- these will be affected by check all -->
        <div><input type="checkbox" class="checkall"> Check all</div>
        <div><input type="checkbox"> Checkbox</div>
        <div><input type="checkbox"> Checkbox</div>
        <div><input type="checkbox"> Checkbox</div>
    </fieldset>
    <fieldset>
        <!-- these won't be affected by check all; different field set -->
        <div><input type="checkbox"> Checkbox</div>
        <div><input type="checkbox"> Checkbox</div>
        <div><input type="checkbox"> Checkbox</div>
    </fieldset>

在这里,每个字段集的所有复选框都可以使用这个 jquery 代码进行检查,还可以获取选中复选框的所有 id

$(function () {
    $('.checkall').click(function () {
        $(this).parents('fieldset:eq(0)').find(':checkbox').attr('checked', this.checked);
      var x =  $(this).parents('fieldset:eq(0)').find(':checkbox').attr('id');

    });
});
于 2013-01-02T09:20:16.680 回答