• 締切済み

tableにまとめて関数

いつもお世話になっております。 今回はtableについてお聞きしたいです。 現在tableの各セルに同じ関数を適用するために以下のようにしています。 <table> <TR> <TD onclick="hoge();"></TD> <TD onclick="hoge();"></TD> ... <TD onclick="hoge();"></TD> </TR> </table> これを一つのtableすべてのTDについて行っているのですがファイルサイズを削りたいということになったので何とかまとめたいと思ったのですがうまい方法がわかりませんでした。 もし方法があるのでしたらご教授をお願いします。

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.3

では、idでテーブルを指定して、すべてのタグにメソッドを設定 すればよいでしょう <script> window.onload=function(){ var tags=document.getElementById("t0").getElementsByTagName("td"); for(var i=0;i<tags.length;i++){ tags[i].onclick=function(){ alert(this.innerHTML); } } } </script> <table border id="t0"> <TR> <TD>11</TD> <TD>12</TD> <TD>13</TD> </TR> <TR> <TD>21</TD> <TD>22</TD> <TD>23</TD> </TR> <TR> <TD>31</TD> <TD>32</TD> <TD>33</TD> </TR> </table>

noname#84373
noname#84373
回答No.2

<html> <table border="1"><tr><td>a</td><td>b</td><td>d</td><td>e</td><td>f</td><td>g</td></tr></table> <script> var mae; document.body.onclick = function(e){ var o = /*@cc_on @if(1) event.srcElement @else@*/ e.target /*@end@*/; if(o.tagName!='TD') return; x=o.cellIndex; y=parentSearch(o,'TR').sectionRowIndex; alert('x='+x+"/y="+y+"/ Text="+o.innerHTML); } function parentSearch(o,t){while(o.tagName!=t)o=o.parentNode;return o;} </script>

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

<table onclick="hoge();"> じゃだめなの?

iec1128
質問者

補足

ご回答ありがとうございます。 それもやって見ましたが、それだとどのセルをクリックしたかわからず、関数の中でセルの座標を使いたかったのであきらめました。

関連するQ&A