현재 뉴스 피드와 같은 "유사한"시스템을 위해 일하고있을 때, 1 페이지에 여러 개의 뉴스 피드가 있습니다. 이는 동일한 ID를 가진 버튼이 여러 개 있음을 의미합니다.동일한 ID를 가진 HTML 요소
$(document).ready(function(){
$('#likebutton').click(function(){
$.ajax({
url : 'inc/ajax.php',
type : 'POST',
data : {
action : 'like_post',
poid : $('#likebutton').data('poid')
},
dataType : 'JSON',
success : function(result) {
if (result.xhr == 'success') {
$('#likebutton').attr('disabled','true');
$('#likes').html(parseInt($('#likes').html()) + 1);
} else if (result.xhr == 'error'){
alert('An internal error occurred, try again later.')
}
}
});
});
$('#unlikebutton').click(function(){
$.ajax({
url : 'inc/ajax.php',
type : 'POST',
data : {
action : 'unlike_post',
poid : $('#unlikebutton').data('poid')
},
dataType : 'JSON',
success : function(result) {
if (result.xhr == 'success') {
$('#unlikebutton').attr('disabled','true');
$('#likes').html(parseInt($('#likes').html()) - 1);
} else if (result.xhr == 'error'){
alert('An internal error occured, try again later.')
}
}
});
});
});
모든이가 같은 버튼을 비활성화하고 카운터에 1을 추가 할 수있는 지점까지 잘 작동 : 이 내가 게시물을 좋아하는 데 사용하는 JQuery와 있습니다. 그것이하는 일은 그 페이지에있는 모든 버튼을 사용할 수 없게 만들고 페이지를 새로 고쳐 다른 게시물을 좋아해야합니다. 나는 동일한 ID를 가지고있는 HTML 요소가 두 개 이상 있기 때문에 고유 ID를 제공 할 수 없다는 것을 알고 있습니다. 왜냐하면 포스트와 자바 스크립트를 반향시키는 함수가 다른 페이지에 있고 또한 고유 ID를 만들면, 이 페이지 (10)의 모든 게시물에 대해이 기능을 반복해야합니다.
편집 :
관련 HTML
<div class='media-body'>
<h4 class='media-heading'>post #1</h4>
<p>post #1</p>
<button data-poid="10" class="btn btn-link btn-xs likebutton" style="font-size: 14px;"><i class="fa fa-thumbs-up"></i> <small>Like</small>
</button>
<h5 id='likes' style="display: inline;">0</h5> <small>likes</small>
<small style="cursor:pointer;" onClick="$('#comments10').toggle('slow');">Add Comment</small>
<form action="" method="post" id="comments10" style="display:none;">
<input type="hidden" name="id" value="10">
<textarea style="width:100%;height:100px;" name="comment"></textarea>
<br />
<input type="submit" class="btn btn-primary" value="Add comment" />
</form>
</div>
내가 ... 내가 일을 모든 사람의 시간과 @의 satapal의 답변을 낭비 미안 잘못된 페이지를 편집 가장 큰 바보를 생각했다 편집 감사합니다 흠뻑!
대신 ID를 사용하는 클래스를 사용하는 것이 좋습니다. –
두 요소가 동일한 ID를 가질 수 없습니다 – Reeno
@ReCaptcha 그리고 어떻게 그럴 수 있습니까? 제 스크립트를 사용하여 예제를 보여 주시겠습니까? –