Javascript 在PHP中访问序列化表单数据

Javascript 在PHP中访问序列化表单数据,javascript,php,jquery,forms,serialization,Javascript,Php,Jquery,Forms,Serialization,我试图避免令人讨厌的页面重新加载,并试图在用户提交表单时动态重新加载div。但是,尽管数据确实成功地传递,并且序列化数据的输出是正确的,但我无法在PHP文件中访问这些数据 这是我的密码: <script> var submiting = false; function submitmyforum() { alert($('#filter_form').serialize()); if (submiting == false)

我试图避免令人讨厌的页面重新加载,并试图在用户提交表单时动态重新加载div。但是,尽管数据确实成功地传递,并且序列化数据的输出是正确的,但我无法在PHP文件中访问这些数据

这是我的密码:

<script>
    var submiting = false;

    function submitmyforum()
    {
        alert($('#filter_form').serialize());
        if (submiting == false)
        {
            submiting  = true;
            $.ajax({
                type:   'post',
                url:    'index.php',
                data:   $('#filter_form').serialize(),
                success: function(data, status, jqXHR) {
                    $('#clublist').html($(data).filter('#clublist').contents());
                    alert('submitted');
                    submiting  = false;
                }
            });
        }
        else
        {
            alert("Still working ..");
        }
    }
</script>

<?php
    if (isset($_POST['location'])) {
        echo "Location was set";
    }
?>

var提交=错误;
函数submitmyforum()
{
警报($('filter_form').serialize());
如果(提交==错误)
{
提交=真实;
$.ajax({
键入:“post”,
url:'index.php',
数据:$('#过滤器_形式')。序列化(),
成功:功能(数据、状态、jqXHR){
$('#clublist').html($(数据).filter('#clublist').contents());
警报(“已提交”);
提交=错误;
}
});
}
其他的
{
警惕(“仍在工作”);
}
}
现在,在我的HTML中,我有多个复选框选项,名称为=“location[]”。此外,该网站与传统的页面重新加载技术配合良好,表单通过POST方法将值提交到同一页面


所以我有点确信HTML前端没有任何错误。我正在等待解决方案。

如果您希望以post方式获取数据,则应使用:

serializeArray() instead of serialize()

因为
serializeArray()
创建的数组不是JSON数组。我建议您在代码中更改它,并尝试以
$\u POST

的形式访问数据。您可以通过
$\u POST
变量访问它。您是否尝试了
var\u dump($\u POST)
来查看您得到了什么?我正在尝试,但没有得到所需的输出。我正在尝试,但没有得到所需的输出。我也尝试过var_垃圾场。但没有产出。事实上,当我点击按钮时,我看到2个警报,div被重新加载,但它看起来是空的,回声“hi”也没有显示出来。我试过它不工作。我是否应该将我的php整合成一个单独的函数,然后在url中提及该函数?我怀疑数据是否真的被传递到php代码中。如何检查?您可以提醒数据检查响应中得到的数据类型,并在php页面中回送/打印变量/数组,并以exit结束。