无法检索复选框状态

时间:2012-06-27 16:57:02

标签: php jquery checkbox

我有一个表格,每行都有一些复选框。表格页脚中有一个选择元素,有多个选项。当用户选择一个选项时,我想将任何选中的复选框和所选选项的值传递给php脚本。

这是表格:

<form name="doall" method="POST" action="action.php">
    <table>
        <tbody>
            <?php for($j=0;$j<count($userToRead);$j++){ ?>
                <tr>
                    <td>
                        <input type="checkbox" id="selection_<?php echo $j ?>" name="objectSelected[<?php echo $userToRead[$j]['id'] ?>]" value="1"/>
                    </td>
                    <td align="center">
                        <?php echo $userToRead[$j]['id'] ?>
                    </td>
                    <td align="center" style="text-align:center;padding-left:15px;background-color:<?php echo $SListsStatus[intval($userToRead[$j]['userstatus'])][1]; ?>;" >
                    </td>
                    <td align="center">
                        <?php echo stripaccenti($userToRead[$j]['user']) ?>
                    </td>
                    <td>
                        <?php echo stripaccenti($SUserType[$userToRead[$j]['type']]['name']) ?>
                    </td>
                    <td align="center">
                        <?php echo stripaccenti($userToRead[$j]['first_name']) ?>
                    </td>
                    <td align="center">
                        <?php echo stripaccenti($userToRead[$j]['last_name']) ?>
                    </td>
                    <td align="center">
                        <?php echo stripaccenti($userToRead[$j]['title']) ?>
                    </td>
                    <td class="actBtns">
                        <a href="#" title="Update" class="tipS">
                            <img src="images/icons/edit.png" alt="" />
                        </a>
                        <a href="#" title="Remove" class="tipS">
                            <img src="images/icons/remove.png" alt="" />
                        </a>
                    </td>
                </tr>
            <?php } // end for ?>
        </tbody>
        <tfoot>
            <tr>
                <td colspan="9">
                    <div class="itemActions">
                        <label>Con tutte le selezionate:</label>
                        <select name="whatDoAll">
                            <option value="1">Attiva</option>
                            <option value="2">Disattiva</option>
                        </select>
                        <input type="submit" value="Esegui" class="button redB" style="margin: 5px;"/>
                    </div>
                </td>
            </tr>
        </tfoot>
    </table>                
</form>

所以在我的表的每一行中都有一个复选框,其中值是我需要用我的php脚本修改的db对象的ID。

这是我的剧本:

$('input[type="submit"]').click(function() {
    var output = '';
    $('input[type="objectSelected"]:checked').each(function(index) {
        output += $(this).val() + ", ";
    });
    alert(output + "is checked!");
});

在php文件中,我尝试使用$_POST['objectSelected']检索变量,但变量始终为空。此外,脚本警报为空。

这些表是用jquery创建的:如果我使用带有纯html复选框的纯html表,一切正常!

1 个答案:

答案 0 :(得分:0)

你做错了。您正在指定输入类型,然后代码应为:

<script type="text/javascript">
                    $('input[type="submit"]').click(function() {
                      var output = '';

                      $('input[type="checkbox"]:checked').each(function(index) {
                         output += $(this).val() + ", ";
                      });

                      alert(output + "is checked!");
                    });
  </script>

希望这有助于你