繁体   English   中英

jQuery + Ajax 表单提交,PHP 没有得到任何数据

[英]jQuery + Ajax form submission, PHP doesn't get any data

我正在尝试提交一个只有一个带有name=radiob的单选按钮组的表单。 这是我用于提交数据的脚本:

<script type="text/javascript">
    $(function() {
        $("#myForm").submit(function() {
            var dataString = $(this).serialize();
            $.ajax({
                type: "POST",
                url: "index.php?p1=<?php echo $_GET['p1']; ?>",
                data: dataString,
                success: function() {
                    $("#ppm").fadeOut("slow");
                    $("#ppmPlugin").load('?p1=<?php echo $_GET['p1'];?>&result=true');
                }
            });
            return false;
        });
    });
</script>

但这就是我在 PHP 脚本中得到的:

$_POST数组 - 空

Array ( )

$_GET数组

Array ( [p1] => xxx [result] => true )

但是如果我alert(dataString); 我得到radiob=2 ,即取决于所选单选按钮的值..

我该如何解决这个问题?

我已经测试了你的代码,它工作正常。 也许您在index.php?p1=xxx中有某种重定向。

PS 使用此代码测试:

<?php $_GET['p1'] = 1; ?>
<form id="myForm">
    <input type="radio" name="radiob" value="1" />
    <input type="radio" name="radiob" value="2" />

    <input type="submit" value="Submit" />
</form>
<script type="text/javascript">
    $(function() {
        $("#myForm").submit(function() {
            var dataString = $(this).serialize();
            $.ajax({
                type: "POST",
                url: "index.php?p1=<?php echo $_GET['p1']; ?>",
                data: dataString,
                success: function(data) {
                    alert(data);
                }
            });
            return false;
        });
    });  
</script>

在 index.php 我有

<?php var_dump($_GET, $_POST); ?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM