【问题标题】:jQuery Post data to next pagejQuery 将数据发布到下一页
【发布时间】:2012-09-12 19:51:59
【问题描述】:

我正在编写一个注册页面,用户首先在第一页中选择三个选项中的一个,然后才能进入第二页,因为它显示的内容取决于先前的选择。所以这是我的代码:

<script>
$(document).ready(function(e) {
    $("form").submit(function() {
        var data= $(this).serialize();
        $.post("/Registration_1.php",data);
        alert(data);
    });
});
</script>

<form id="frmtype1" name="frmtype1" method="post">
<input type="radio" name="Reg_type" value="1"/> option 1 <br/>
<input type="radio" name="Reg_type" value="2"/> option 2<br/>
<input type="radio" name="Reg_type" value="3"/> option 3 <br/>
<input type="submit" name="Submit" value="Submit" />
</form>

问题是在选择一个选项并单击提交后,它只停留在第 1 页。警报显示数据,这一切都是正确的,但它不会移动到下一页。我是 jquery 的新手,所以我不知道 $.post 在语法上是否正确。谁能看到这里的问题是什么?为什么不跳转到下一页?谢谢

【问题讨论】:

  • 为什么不在表单的action属性中指定页面url?

标签: javascript jquery html forms post


【解决方案1】:

你需要再定义一个函数来处理你的 post 方法的成功事件。当您的帖子成功完成后,您可以像 SomeKittens 显示的那样更改 URL。

$.post("/Registration_1.php",data,function(response){
     window.location = ...
});

【讨论】:

    【解决方案2】:

    请以如下形式指定操作:action="your url"

    例如:

    <body>
        <form id="form1" action="http://stackoverflow.com/" method="post">
            <input type="radio" name="Reg_type" value="1"/> option 1 <br/>
            <input type="radio" name="Reg_type" value="2"/> option 2<br/>
            <input type="radio" name="Reg_type" value="3"/> option 3 <br/>
            <input type="submit" id="s" name="Submit" value="Submit" />
        </form>
    </body>
    

    修改后的脚本:

       $(document).ready(function () {
            $('input').on('click', function () {
                window.location('http://stackoverflow.com/');
            });
        });
    

    希望这会有所帮助:)

    【讨论】:

    • 我特别没有这样做是有原因的。我有 jquery 的东西,以确保用户在提交之前选择一个选项。
    • 嗯,你正在使用的 .post 是进行 ajax 调用,我怀疑你想这样做。那么你为什么不使用你的'jquery stuff'来验证提交调用window.location,如果它是有效的呢?简单的
    【解决方案3】:

    问题是$.post 正在发送数据,但没有重定向用户。

    Here's a tutorial on how to redirect the user.

    【讨论】:

    • 我试过 window.location="/Registration_1.php";和“../Registration_1.php”,似乎都不起作用。
    • 好问题!这正是你可以通过谷歌找到的东西。
    猜你喜欢
    • 1970-01-01
    • 2023-03-13
    • 1970-01-01
    • 2013-01-08
    • 2012-12-06
    • 2018-11-22
    • 2014-02-13
    • 2014-09-10
    • 1970-01-01
    相关资源
    最近更新 更多