1

添付のコードを使用してフォームを送信すると、メッセージが div に表示される代わりに、画面が更新され、完成したフォームがブラウザーのキャッシュに保持されます。私は明らかにどこかで間違っているので、誰かが私の間違いを指摘してくれたらありがたいです. 関連するコードを投稿しましたが、見落としがある場合はお知らせください。

firebug では、投稿タブに返されている正しいデータを確認できます。

投稿するのに最適な場所がわからなかったので、これが間違っている場合は、管理者、適切と思われるように修正してください. どうもありがとう。

jqueryコード

//Begin function to submit report form

$(function(){         
        $(".frmreport").submit(function(){

         var formdata = $(this).serialize();

         $ajax({
           type: "POST",
           url: "../frm10010.php",
           data: formdata,
           dataType: "json",
           success: function(msg){
               $("#report_result").html("You have succesfully submitted your report. Thank you.");
          }
       });
         return false;
     });
});

// End function to submit report form

frm10010.php

<?php

     $dept = mysql_real_escape_string($_POST['dept']);
     $name = mysql_real_escape_string($_POST['name']);
     $email = mysql_real_escape_string($_POST['email']);
     $position = mysql_real_escape_string($_POST['position']);
     $feedback = mysql_real_escape_string($_POST['feedback']);

     $form = array('dept'=>$dept, 'name'=>$name, 'email'=>$email, 'position'=>$position, 'feedback'=>$feedback);

     $result = json_encode($form);

     echo $result;
?>

html

<div id="report_result"></div>
<div id="formShow">
          <form class=frmreport" method="post" class="webform">
            <fieldset>
            <legend><span class="subtitle">Submit Technical Report</span></legend>
            <label for="dept">Department</label>
            <input id="dept" name="dept" class="text" type="text" />
            <label for="name">Full Name:</label>
            <input id="name" name="name" class="text" type="text" />
            <label for="email">Email address:</label>
            <input id="email" name="email" class="text" type="text" />
            <label for="position">Position:</label>
            <input id="position" name="Position" class="text" type="text" />
            <label for="feedback">Problem:</label>
            <textarea name="feedback" cols="22" rows="5"></textarea>
            </fieldset>
            <input class="submit" type="submit"  name="submit" value="Submit Report" />
            <input class="cancel" type="reset"  name="cancel" value="Clear Report" />
          </form>
        </div>
4

2 に答える 2