1

私はJQueryにかなり慣れていないので、単純だと確信しているものに問題があります。以下は、私が使用している html の例です。

<tr>
<td><div class="testclass"><p>Test text</p></div></td>
<td><button class="testButton">Button text</button></td>
</tr>​

<p>ボタンをクリックすると、前のセルの値を取得したい。現在、選択しようとしている方法は次のとおりです。

var text = $(".testButton").parent().parent().closest('p').text();

ボタンの機能の中onClickで、私も試しました:

$(this).prev('p').text();

ただし、常にnullです。これを正しくしようとしてしばらくjsfiddleをいじりましたが、うまくいきませんでした。ヒントをいただければ幸いです。

4

3 に答える 3

3

使用してみてください:

$(".testButton").click(function(){
 alert($(this).parent().parent().find('p').text());
});

デモ: http://jsfiddle.net/ZsLZ2/

于 2012-10-20T10:27:49.787 に答える
2

なぜだめですか

var text = $(".testButton").parent().prev().find('p').text();

ボタンが多数ある場合は、 $(this) を使用して適切なボタンを選択する必要があることに注意してください。

$('.testButton').click(function(){
    var text = $(this).parent().prev().find('p').text();
    alert(text);
});​

デモンストレーション

于 2012-10-20T10:25:45.267 に答える
1

あなたの場合、兄弟を利用できます:

$('.testButton').click(function() {
    alert($(".testButton").siblings().text())
});

デモ: http://jsfiddle.net/3a69A/

于 2012-10-20T10:32:09.190 に答える