Reputation: 227
I have a problem like this. The first row number is increase after clicked, but the second row number doesn't increase after clicked. I want all of the number is increase after clicked. I think jquery code is wrong, please somebody help me to fix my jquery code.
my code:
<?php
include("mwcon.php");
?>
<html>
<head>
<link rel='stylesheet' type='text/css' href='/css/post.css'>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#post-vote-top").click(function () {
$("#post-vote-middle").text(function(){
return ~~$(this).text() + 1
});
});
});
</script>
</head>
<body>
<?php
echo "
<div id='post'>
<table>
";
$no=1;
$q=mysql_query("SELECT * FROM t_post");
while($f=mysql_fetch_object($q)){
echo "
<tr>
<td id='post-nomor'>$no.</td>
<td id='post-vote' align='center'>
<div id='main'>
<div id='post-vote-top'></div>
<div id='post-vote-middle'>$f->vote</div>
<div id='post-vote-bottom'></div>
</div>
</td>
<td><a href='$url' target='_blank'><img src='$f->linkimg' width='80' height='50'></img></a></td>
</tr>
";
$no++;
}
echo "
</table>
</div>
";
?>
</body>
</html>
Please help me. Thank you.
Upvotes: 0
Views: 66
Reputation: 115242
id
should be unique use class
instead. You can use next()
to select element immediately after clicked element
$(document).ready(function() {
$(".post-vote-top").click(function() {
$(this).next(".post-vote-middle").text(function(i, v) {
return parseInt(v, 10)+1;
});
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table>
<tr>
<td id='post-nomor'>$no.</td>
<td id='post-vote' align='center'>
<div class='main'>
<div class='post-vote-top'>up</div>
<div class='post-vote-middle'>1</div>
<div class='post-vote-bottom'></div>
</div>
</td>
<td></td>
</tr>
<tr>
<td id='post-nomor'>$no.</td>
<td id='post-vote' align='center'>
<div class='main'>
<div class='post-vote-top'>up</div>
<div class='post-vote-middle'>1</div>
<div class='post-vote-bottom'></div>
</div>
</td>
<td></td>
</tr>
</table>
Upvotes: 2