使用serialize()jQuery方法解析服务器中的复选框值

时间:2016-02-17 13:09:12

标签: javascript jquery forms checkbox

你好我有这样的形式:

<form id="form">
<input type="text" name="fname" />

<input type='checkbox' name='ck[]' value='1'id='ck_1' />
<input type='checkbox' name='ck[]' value='2'id='ck_2' />
<input type='checkbox' name='ck[]' value='3'id='ck_3' />

<button id="btn">send</button>
</form>

我通过JQuery发送这个表单这些方法。

$('body').on('click','#btn',function(event)
{
    event.preventDefault();     
    $.ajax({
        type: "POST",
        url: "index.php",
        data: $("#form").serialize(),
        success: function(data) 
        {
              alert('data sent.');
        }
        ...

现在如何打印所有帖子?

我试试这个:

foreach ($_POST as $key => $value)
        echo "Field ".htmlspecialchars($key)." is ".htmlspecialchars($value)."<br>";

但它不适用于多选复选框...

如何访问服务器中的复选框值?

1 个答案:

答案 0 :(得分:0)

据我所知,这个小提琴:https://jsfiddle.net/jimedelstein/ddrkqruq/数据正在成功传递到服务器,这里是输出:

fname=myname&ck[]=1&ck[]=3

但是这些值在服务器上以一个名为ck []的数组形式出现。查看此帖子,了解有关正确处理的更多信息:PHP access all $_POST[] variables into an array?