0

私は3ページの登録サイトを持っています。ユーザーが最初のページで 3 つのオプションのいずれかを選択すると、送信して 2 番目のページに移動できます。そこで情報を入力し、[送信] をクリックすると、3 番目のページに移動します。問題は、1 ページ目と 2 ページ目で送信をクリックした後の jquery リダイレクト コードが機能しないことです。最初のページのコードは次のとおりです。

<?php
session_start();
$errors = false;
$message="";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    if (!isset($_POST['Reg_type']) || !preg_match('/^[123]$/', $_POST['Reg_type'])) {
        $message = "Please select an option";
        $errors = true;
    }
    if (!$errors) {
        $_SESSION["regtype"]=$_POST["Reg_type"];
        header("Location: Registration_2.php");
        exit;
    }
}
?>
<div id="form_page1">
<form id="frmtype1" name="frmtype1" method="post">
<input type="radio" name="Reg_type" value="1"/> option1 <br/>
<input type="radio" name="Reg_type" value="2"/> option2 <br/>
<input type="radio" name="Reg_type" value="3"/> option3 <br/>
<input type="submit" name="Submit" value="Submit" />
<?php
if($errors)
echo $message;
?>

そのphpコードをjavascriptに変換しようとしていますが、これが私が持っているものです:

<script>
$(document).ready(function(e) {
    $("form").submit(function() {
        var data= $(this).serialize();
        alert(data);
        $.post("/Registration_1.php",$("#form_page1").serialize());
            window.location.replace("http://www.google.com"); //just for testing purposes
    });
});
</script>

しかし、何らかの理由で jquery が機能しないため、代わりに php を使用する必要があります。誰が問題が何であるか教えてもらえますか? post メソッドの最初の引数は、移動したいページ (Registration_2.php) またはデータを要求しているページでなければなりませんか? 最初のページの jquery コードが修正されれば、2 ページ目を修正できることを願っています。私は過去 3 時間、この問題に取り組んだり調査したりしてきましたが、役に立ちませんでした。助けてください、ありがとう。

4

1 に答える 1

1

なぜこのような複雑なソリューションを選択するのでしょうか?

フォーム 1:

<form action="form2.php"  method="post">
  <input type="submit" >
</form>

フォーム 2:

<form action="form3.php"  method="post">
  <input type="submit"> 
</form>

などなど

于 2012-09-13T16:49:08.320 に答える