dポイントプレゼントキャンペーン実施中!

テーブルがあり、連番が 1 2 3 と振ってあります。
その文字情報をJQueryで取得するにはどのように記述すれば良いのでしょうか?

例)1をクリック → 1 を取得。


<table border="1" width="150">
<tbody>
<tr>
<td width="50"><a href="#">1</a></td>
<td>田中</td>
</tr>
<tr>
<td><a href="#">2</a></td>
<td>佐藤</td>
</tr>
<tr>
<td><a href="#">3</a></td>
<td>鈴木</td>
</tr>
</tbody>
</table>

ご存知の方教えて下さい。

A 回答 (3件)

#2です。


一応全部書いたサンプル。
(アンカーは不要に感じたので、1列目のセルという感じで指定してます)

<html>
<head>
<title></title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function(){
$('#table1 td:first-child').click(function(){
alert( $(this).text() );
});
});
</script>

</head>
<body>


<table border="1" width="150" id="table1">
<tbody>
<tr>
<td width="50">1</td>
<td>田中</td>
</tr>
<tr>
<td>2</td>
<td>佐藤</td>
</tr>
<tr>
<td>3</td>
<td>鈴木</td>
</tr>
</tbody>
</table>

</body>
</html>
    • good
    • 0
この回答へのお礼

早速ありがとうございます。
text() を使うといいのですね。

IEでもFireFoxでも動作確認出来ました。
これでコード番号などが扱えそうです。

お礼日時:2008/07/02 15:47

click で ハンドラを結び付けます。


ハンドラ内では $(this) がイベント発生元を示します。


$('table a').click(function(){
var text = $(this).text();
});

このままだと全てのtable配下の全てのリンクに反応するのでtableにidやリンクにclassを付けておかないと使い勝手が悪いと思いますが。
    • good
    • 0

JQueryじゃないとだめなんですか?

この回答への補足

セルの要素を取得するのに
var cel = event.srcElement.innerText;
(IE以外ではsrcElementの代わりにtargetを使う。)
で出来るのがわかりました。

記述が長くなりそうなのでJQueryを使うと短くなるのかと思ったものですから。

補足日時:2008/07/02 12:41
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!