実現したいこと
ソースコードです
HTML
1<table> 2<tbody> 3 <tr> 4 <td class="table-cell" data-num='1'></td> 5 <td class="table-cell" data-num='2'></td> 6 <td class="table-cell" data-num='3'></td> 7 <tr> 8</tbody> 9</table>
クリックしたセルを取得して、そこに値を追加したいです。例えばdata-num1をクリックすると、
HTML
1<td class="table-cell" data-num='1'>Click!</td>
のようになって欲しいです。
問題点
セルを取得しようと、以下のコードを書いてみましたがエラーが発生しました。データ属性を使用するのは今回が初めてで、使い方が間違っているかもしれません。
JavaScript
1var number = (document.getElementsByClassName('table-cell').dataset.num; 2console.log(number); 3 4/* 発生したエラー 5TypeError: Cannot read property 'num' of undefined 6 at HTMLTableElement.clickCell 7*/
追記
当初の予定とは異なりますが、
e.target.getAttribute('data-num');で取得できました。しかし文字列の追加する方法が分かりません。
回答1件
あなたの回答
tips
プレビュー