テキスト入力の値をとり、それをMySQLデータベースに格納するjQueryがあります。しかし、jQueryを実行すると、ページがリフレッシュされ、フォームの変数がURLにGET変数として表示されます。しかし、変数のどれもがGETではありません。理想的には、ページをリフレッシュしないようにしたいと思います。jQuery POSTページを更新する
jQueryの:(PHPからエコー)
$('.commentBox').keypress(function(e) {
if(e.which == 13) {
if ($.trim($(this).val()) == ""){
$('#nocomment').modal('show');
}
else {
var form = $(this).siblings('.commentForm');
var commentbox = $(this).val();
$.ajax({
type: "POST",
url: "../comment",
data: form.serialize(),
success: function(){
commentbox.val('');
form.siblings('.commentContainer').append(response);
}
});
}
}
});
HTML:
<form class='commentForm'>
<input type='hidden' name='record_id' value='$answerid[$f]' />
<input type='hidden' name='question_id' value='$q' />";
<input type='text' class='commentBox' placeholder='...comment' name='comment' autocomplete='off' />";
</form>
これを実現するためにはfalseを返す使用しないでください。イベントのバブリングやキャプチャが中断され、他のjavascriptがあなたの要素とやり取りすることが困難になることがあります。 – Nate
@josephどこに置いたらいいですか?私はkeypress関数の直後に試してみましたが、テキストボックスには何も入力しませんでした。私はそれを 'else {'と '私は入力することができます入力した後に移動しましたが、何も起こらなかった – kirby
@ user802370 - 私は私の答えにコードを追加しました。 –