使用jQuery和Ajax的POST数组

时间:2014-03-10 01:00:16

标签: javascript php jquery ajax

我有一个包含多个字段的表单,可以添加字段。

表格如下:

<form id="myForm" action="myfile.php" >
<input . . > 

<select>. . . </select>

</form>

myfile.php包含以下代码:

foreach ($_POST as $key => $value) {

echo $key." takes the <b>".$value."</b> Value"; 

}

这个简单的代码处理表单的所有条目,无论有多少条目。

现在,我想要的是:

当我点击提交按钮时,不是将表单的内容发送到脚本,而是实际获取该数组并将其传递给AJAX,而无需手动编写每个单独的键及其值。

我希望它有意义

2 个答案:

答案 0 :(得分:1)

我认为你要找的是serialize()

jQuery(function ($) {
    //submit handler
    $('#myForm').submit(function (e) {
        //prevent default submit
        e.preventDefault();

        $.ajax({
            url: $(this).attr('action'),
            type: 'POST',
            data: $(this).serialize(),
            ....
        })
    });
})

答案 1 :(得分:0)

您可以使用jQuery serialize() 方法

$("#myForm").submit(function(e){ //To listen submit event
    e.preventDefault(); //To prevent default browser action
    var data=$(this).serialize(); // To get form data
    $.post($(this).attr('action'),data,function(data){ //To perform post
         $('#result').html(data); //Result data
    });
});