4

iframe (facebox を使用) にフォームを読み込んでいます。フォームが送信され、iframe 内のページがリロードされると、親ページの特定のテーブル行に CSS クラスを追加したいと考えています。

テーブルは次のようになります。

<table>
    <tr id="row-1"><td><a href="">link to open facebox with iframe</a></td></tr>
    <tr id="row-2"><td></td></tr>
    <tr id="row-3"><td></td></tr>
    <tr id="row-4"><td></td></tr>
</table>

フォームが iframe で送信されると、親フレームのテーブルは次のようになります。

<table>
    <tr id="row-1" **class="highlite"**>
        <td><a href="">link to open facebox with iframe</a></td>
    </tr>
    <tr id="row-2"><td></td></tr>
    <tr id="row-3"><td></td></tr>
    <tr id="row-4"><td></td></tr>
</table>

コミュニティはこれを正しく実装するのを手伝ってくれますか?

4

2 に答える 2

1

同じリンクがクリックされて再度読み込まれる可能性がある場合は、.addClass代わりに使用することをお勧めします。.toggleClassのデフォルトの動作は.toggleClass、その要素にクラスが存在するかどうかを確認し、結果に基づいてクラスを追加または削除することです。

現在の行のみを強調表示する場合は、次のようにします。

$("#row-1", window.parent.document).addClass("highlite")
    .siblings().removeClass("highlite");
于 2010-08-16T10:49:08.480 に答える
1
$("#row-1", window.parent.document).toggleClass("highlite");

ピム・イェーガーを引用するには:

ラッパーの 2 番目のパラメーターは、$()検索するコンテキストです。これはデフォルトでドキュメントになります。

于 2010-08-16T10:00:50.507 に答える