jQuery Mobile を使用して送信しようとしているフォームがあります。ただし、フォームを送信すると、ページは送信ページに変わり、「未定義」と表示されます。ページには他に何もありません。
jquery/ajax は次のとおりです。
$("#submit_comment").click(function() {
var formData = $("#comment_form").serialize();
$.ajax({
type: "POST",
url: "forms/comment_form.php",
cache: false,
data: formData,
success: onSuccess,
error: onError
});
return false;
});
HTMLフォームは次のとおりです。
<form id="comment_form" action="forms/comment_form.php" method="POST" style="display:none";>
<input type="hidden" name="user_id" value="<?php echo $session_user_id; ?>">
<textarea id="text_area_input" name="comment" placeholder="Enter a comment here."></textarea>
<input type="submit" id="submit_comment" name="submit_comment" value="Post Comment">
</form>
投稿ページはこちら:
if (empty($_POST['submit_comment']) === false) {
if (empty($_POST['user_id']) === true) {
$comment_errors[] = 'Sorry, there was an error submitting your comment. Please try again.';
}
if (empty($_POST['comment']) === true) {
$comment_errors[] = 'You must enter something into the comment field.';
}
if (empty($comment_errors) === false) {
echo "<div id='comment_errors'><?php echo output_comment_errors($comment_errors);?></div>";
} else if (empty($comment_errors) === true) {
$comment = $_POST['comment'];
$user_id = $_POST['user_id'];
echo "ok";
}
}