Toggle row visibility one at a time
Posted
by kuswantin
on Stack Overflow
See other posts from Stack Overflow
or by kuswantin
Published on 2010-03-26T18:10:52Z
Indexed on
2010/03/26
18:13 UTC
Read the original article
Hit count: 375
I have a couple of tables with similar structures like this:
<table>
<tbody>
<tr>content</tr>
<tr>content</tr>
<tr>content</tr>
<tr>content</tr>
<tr>content</tr>
<tr>content</tr>
<tr>content</tr>
<tr>content</tr> ..etc
--- The fake button is added here
<div class="addrow">Add another</div>
</tbody>
</table>
Since this is a long list, I have a need to toggle the rows one at a time. I just need to show the first row, of course, the rest should be toggled.
The action is when I click a dynamic fake button, it will show row no. 2, and clicking again will show another next row.
This is what I have done so far:
$("table#field_fruit_values tr.draggable").not(':first').hide();
$("table#field_vegetables_values tr.draggable").not(':first').hide();
$("body.form table.content-multiple-table tbody").append('<div class="addrow">Add</div>');
$(".addrow").click(function() {
var hiddenRow = $(this).prev('tr.draggable');
$(this).prev(hiddenRow + 1).show();
//if (hiddenRow + ':last').length) { // <= silly logic
// $(this).hide();
//}
});
The button only works for one row. I must have done something wrong :)
When the final is reached, I also want the button to disappear.
Sorry if this question sound silly.
Any help would be very much appreciated.
Thanks.
© Stack Overflow or respective owner