###前提・実現したいこと
htmlのtableのtdのクラスの数を数える方法、tableのtrのindexを取得する方法を知りたいです。
###発生している問題・エラーメッセージ
javascript
1index=-1 2と表示されてしまいます。
###該当のソースコード
html
1<table> 2<tr> 3<th>名前</th> 4<th>身長</th> 5<th>体重</th> 6<th></th> 7</tr> 8<tr> 9<td>佐藤</td> 10<td class="height">170</td> 11<td class="weight danger">50</td> 12</tr> 13<tr> 14<td>鈴木</td> 15<td class="danger">150</td> 16<td class="weight">50</td> 17</tr> 18<tr> 19<td>田中</td> 20<td class="height">180</td> 21<td class="weight">70</td> 22</tr> 23<tr> 24<td>山田</td> 25<td class="height">170</td> 26<td class="weight danger">80</td> 27</tr> 28</table>
javascript
1for(var i=0;i<6;i++){ 2if($('tr').eq(i).find('td').hasClass('danger')){ 3$('tr').eq(i).append('<td>'+'<button class="btn btn-sm">'+'表示'+'</button>'+'</td>'); 4//dangerクラスを持っている場合、空欄のthにボタンを配置します。 5//このボタンをクリックすると、.dangerを持っているクラス名を表示させたいです 6} 7}
###試したこと
javascript
1$('.btn').on('click',function(){ 2var index=$('.btn').index($(this)); 3if($('.btn').eq(index).parents('td height').hasClass('danger')){ 4alert('height'); 5}else if($('.btn').eq(index).parents('td weight').hasClass('danger')){ 6alert('weight'); 7} 8}); 9//おそらくparentsの使い方が間違っていると思います、、、parentsの位置、有無、tdをtrにしたりとこの式をベースに色々いじりましたが、うまく行きませんでした
###補足情報(言語/FW/ツール等のバージョンなど)
また、 .danger を持っている td .height、td .weightの数の数え方も合わせて教えていただけるとありがたいです。
jQueryは使えます。よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/06/12 14:01
2017/06/13 14:14