0

JQueryを使って簡単な関数を書きたいです。私はこのjfiddleを作成しました:

<table class="my_table">
    <tr>
        <td class="correct"></td>
        <td>
            <input type="button" class="my_button" />
        </td>
    </tr>
    <tr>
        <td class="incorrect"></td>
        <td>
            <input type="button" class="my_button" />
        </td>
    </tr>
...

http://jsfiddle.net/Xz3xc/1/

クリックすると、ボタンの上にコンテンツが追加されます。これは私のローカルマシンの場合です。WordPressで別のテーマを実行すると、コードは次のようになります。

<table class="my_table">
    <tr>
        <td class="correct"></td>
        <td>
            <div>
            <input type="button" class="my_button" />
            </div>
        </td>
    </tr>
        <tr>
        <td class="correct"></td>
        <td>
            <div>
            <input type="button" class="my_button" />
            </div>
        </td>
    </tr>
...

http://jsfiddle.net/KuACZ/1/

もちろん、関数に1つのparent()がないため、コードは機能していません。テーマから独立しているように、ボタンがクリックされたのと同じtrの最初のtdを常に取るように、この関数をジェネリックに記述するにはどうすればよいですか。

ありがとう!

4

1 に答える 1

2

このコードは、同じ内のtdクラスを持つすべての'を検索します。correcttr

$('.my_button').click(function() {
   $(this).parentsUntil("tr").siblings("td.correct").html('Test'); 
});

jsFiddle

于 2013-02-26T22:14:17.957 に答える