同じことを行う複数のフォームを含むページがあり、ページlike
内の各投稿のボタンとして機能し、そのすぐ隣に「likes」という名前のdiv内のいいねの数があります。$ id、どこにあるかを特定できますajax呼び出しの後にいいねカウントを書き込みます。jQuery ajax関数を使用しようとしましたが、関数の結果を書き込むdivを設定できませんでした。
$.ajax({
type:'POST',
url: 'likepost.php',
data:$('#like').serialize(),
success: function(response) {
$('#like').find('#likediv').html(response);
}
});
そして、likepost.phpのデータにどのようにアクセスしますか?私はjavascriptがひどいので、誰かが私を助けて、jQuery関数が実際にどのように機能するかを説明してくれることを願っています。
これは機能しますか?
$(function () {
$("#likebutton").click(function () {
var id = $('input[name=id]'); // this is me trying to get a form value
$.ajax({
type: "POST",
url: "likepost.php",
data: $("#like"+id).serialize(), // the form is called like+id e.g. like12
success: function(data){
$("#likes"+id).html(data); // write results to e.g. <div id='likes12'>
}
});
});
});
これをコードに入れましたが、ボタンをクリックすると、通常の投稿更新ページが実行されます。何故ですか?