1

私はフォームを持っています。私がする必要があるのは、このフォームデータを jquery .post を介して別のページに渡すことです。その下に javascript があります。

    <script type="text/javascript">
$("form").submit(function(){
    $(".application_container").append('<div class="preloading" style="padding-top:250px;"><img src="<?php echo base_url() . "assets/images/loading.gif";?>" alt="تحميل" /></div>').show();
    var str = $("form").serialize();
    var url = "<?php echo base_url() . "hawaa/confirm_applicant.html"; ?>";
    $.post(url, function(str){
        $(".application_container").append(str).show();
        $(".preloading").remove();
    });
    return false;
});
   </script> 

別のページを要求するが、フォーム送信データを送信しないというエラーのため、検証エラーが表示されます

4

2 に答える 2

4

使い方が$.post()間違っています。str次のように、データを data パラメータとして渡す必要があります。

$.post(url, str, function(data, status, jqXHR) {
    // do stuff with response data here
});
于 2012-06-29T13:52:28.893 に答える
3

str変数を2番目のパラメーターとして$.post呼び出しに渡す必要があります。ドキュメントには次のように記載されています。

  • 最初のパラメータは、データを投稿するURLです
  • 2番目のパラメーターは、投稿するデータです
  • 3番目のパラメーターは、URLを要求した結果です(返されたものに応じて、HTMLまたはXML)。

したがって、正しい方法は次のとおりです。

<script type="text/javascript">
  $("form").submit(function(){
    $(".application_container").append('<div class="preloading" style="padding-top:250px;"><img src="<?php echo base_url() . "assets/images/loading.gif";?>" alt="تحميل" /></div>').show();
    var str = $("form").serialize();
    var url = "<?php echo base_url() . "hawaa/confirm_applicant.html"; ?>";
    $.post(url, str, function(result){
      $(".application_container").append(result).show();
      $(".preloading").remove();
    });
    return false;
  });
</script>
于 2012-06-29T13:52:13.683 に答える