如何通过jquery / ajax将复选框数据作为数组发送到php脚本

时间:2013-12-08 17:08:37

标签: javascript php jquery ajax

我这样的复选框很少,

<input type='checkbox' name='name[]' value='1' />
<input type='checkbox' name='name[]' value='2' />
<input type='checkbox' name='name[]' value='3' />
<input type='checkbox' name='name[]' value='4' />
<input type='checkbox' name='name[]' value='5' />

我的php处理代码如下,

<?php
$check=$_POST['name'];

foreach($check as $arr){
//code for saving data in database
}

我的问题是,我正在尝试通过jquery / ajax发送复选框数据。但我无法将这些数据作为数组发送到php页面。

请告诉我,我可以这样做。

2 个答案:

答案 0 :(得分:2)

您只需serialize()serializeArray()复选框并将其发送给PHP:

$.ajax({
    url  : 'processing.php',
    data : $('[name="name[]"]').serialize()
}).done(function(result) {
    // ta da
});

请注意,只会选中复选框,因为通常不需要为未选中的框执行任何操作。

答案 1 :(得分:0)

查看

        <input type='checkbox' name='name[]' class="checkBoxGroup" value='1' />
        <input type='checkbox' name='name[]' class="checkBoxGroup" value='2' />
        <input type='checkbox' name='name[]' class="checkBoxGroup" value='3' />
        <input type='checkbox' name='name[]' class="checkBoxGroup" value='4' />
        <input type='checkbox' name='name[]' class="checkBoxGroup" value='5' />

脚本

        $ary=$(".checkBoxGroup").serializeArray();
        alert($ary[0]['value']);