別のjqueryコードによってhtmlに挿入されたフォームをエコーするphpコードがあります。これはすべてうまくいきます。このフォームを ajax で送信しようとしています。
echo '<form id="comment_form" action="commentvalidation.php?PhotoID='.$_GET['PhotoID'].'" method="POST">';
echo '<label>Comment: </label>';
echo '<textarea id="description" name="CommentDesc" cols="25" rows="2"></textarea>';
echo '<input class="button" id="comment_btn" type="submit" name="Comment" value="Comment" >';
echo '</form>';
伝統的に送信された場合、フォームは正常に機能します。問題は、それを ajax で送信できないことです。.submit は、デフォルトのアクションを妨げません。
<script>
$(function(){
$('#comment_form').submit(function() {
alert("we are in");
$.post($('#comment_form').attr('action'), $('#comment_form').serialize(), function(data){
$('#comment_form').html("<div id='message'></div>");
});
//Important. Stop the normal POST
return false;
});
});
</script>