HTMLマークアップを変更できない環境で、jQueryを使用して最初の兄弟の内部値を選択しようとしています。
私は次のものを持っています:
<tr>
<td>3</td>
<td>bob</td>
<td>smith</td>
<td>bob@example.com</td>
<td>
<img src="bobsmith.png" onclick="doSomething()" />
</td>
</tr>
私は次のように最初の値を取得しようとし<td>
ています:
function doSomething() {
var temp = $(this).parent().parent().children().filter(':first');
alert("you clicked person #" + temp.html());
}
これから得られるのは だけですnull
。
.siblings()
関数とのさまざまな組み合わせも試しましたが、役に立ちませんでした。
何か案は?
ありがとう、
注:抜粋元のテーブルが ajax 呼び出しから動的にロードおよび更新されることを忘れていました。これは、バインドを含む提案に関連する場合があります。
解決策: 受け入れられた回答に触発されて、次の解決策を採用しました:
<tr>
<td>3</td>
<td>bob</td>
<td>smith</td>
<td>bob@example.com</td>
<td>
<img src="bobsmith.png" onclick="doSomething(this)" />
</td>
</tr>
jQuery JavaScript の場合:
function startStopNode(el) {
var temp = $(el).parent().siblings(':first').html();
alert("you clicked: " + temp);
}