html
1<table> 2 <thead> 3 <th class="sort" data-sort="group-a">A</th> 4 <th class="sort" data-sort="group-b">B</th> 5 <th class="sort" data-sort="group-c">C</th> 6 </thead> 7 <tbody> 8 <tr> 9 <td class="group-a before01">内容01-1</td> 10 <td class="group-a after01">内容01-2</td> 11 <td class="group-b">内容02</td> 12 <td class="group-c">内容03</td> 13 </tr><tr> 14 <td class="group-a">内容04</td> 15 <td class="group-b before01">内容05-1</td> 16 <td class="group-b after01">内容05-2</td> 17 <td class="group-a">内容06</td> 18 </tr> 19・ 20・ 21・ 22 <tbody> 23</table> 24 25<input type="checkbox" id="change01"><label for="change01">変更</label> 26
この様なhtmlでチェックボックス「ID:change01」をクリックした時に、クラス「before01」と「after01」の表示を切り替えたいと思っています。
各列にList.jsによるソート(指定したクラスでソート)をかけているので、要素の位置を前後に入れ替えた上で要素を表示/非表示にしています。
Jquery
1 2$('#change01').change(function(){ 3 if ($(this).is(':checked')) { 4$('.after01').after($('.before01')).show(); 5$('.before01').hide(); 6} else { 7$('.before01').after($('.after01')).show(); 8$('.after01').hide(); 9} 10});
css
1.after01{display:none;}
ここまでは出来たのですが、チェックを外した際にすべての値が返ってきてしまいました。
どうしたら各要素毎に入れ替えと表示/非表示ができるのでしょうか?
教えていただけるとありがたいです。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー