これは.prev()
関数で実現できると思っていましたが、何らかの理由で機能しません。個々のdivのjquery関数
私は、ブログ上の投稿のための親指の上/下ボタンを作成しています。私はユーザーが投票した内容に応じてメッセージを表示しようとしています。 UPまたはDOWNのいずれかですが、1つの特定の投稿に投票するたびに、すべての投稿に対してメッセージが表示されます。
これは私のコードです。私はそれをより読みやすくするためにprev()の試みを削除しました。このスクリプトはAjaxをうまく動作させます。
$(document).ready(function() {
$(".vote_button").click(function(e) { //the UP or DOWN vote button
var vote_status = $(this).attr('class').split(' ')[1]; //gets second class name following vote_button
var vote_post_id = $(this).attr("id"); //the post ID
var dataString = 'post_id=' + vote_post_id + '&vote_status=' + vote_status;
$.ajax({
type: "POST",
url: "url/add_vote.php",
data: dataString,
cache: false,
success: function(html) {
if (vote_status == 1)
{
$('.msg_box').fadeIn(200);
$('.msg_box').text('You voted UP!');
}
if (vote_status == 2)
{
$('.msg_box').fadeIn(200);
$('.msg_box').text('You voted DOWN!');
}
}
});
return false;
});
});
サンプルHTML
<div class="vote_button 1" id="18">UP</div>
<div class="vote_button 2" id="77">DOWN</div>
<div class="msg_box"></div>
<div class="vote_button 1" id="43">UP</div>
<div class="vote_button 2" id="15">DOWN</div>
<div class="msg_box"></div>
<div class="vote_button 1" id="11">UP</div>
<div class="vote_button 2" id="78">DOWN</div>
<div class="msg_box"></div>
EDIT: http://jsfiddle.net/XJeXw/
あなただけの数の 'class'または' id'属性を作るべきではありません。彼らは決して数字で始めるべきではありません。 – alex
それは良い情報です。私はそれを修正するつもりです。 – CyberJunkie