使用 jQuery 在 iframe 中加载页面后将 CSS 类添加到表行?

发布于 2024-09-14 04:23:15 字数 888 浏览 11 评论 0原文

我正在 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>

社区可以帮助我正确实现此操作吗?

I'm loading a form in an iframe (with facebox). When the form is submitted and the page inside the iframe is reloaded, I would like to add a CSS class to a specific table-row on the parent page.

the table looks like this:

<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>

After the form is submitted in the iframe, the table in the parent frame should look like this:

<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>

Can the community assist me in implementing this correctly?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

命比纸薄 2024-09-21 04:23:15
$("#row-1", window.parent.document).toggleClass("highlite");

引用Pim Jager :

$() 包装器的第二个参数是要搜索的上下文。默认为文档。

$("#row-1", window.parent.document).toggleClass("highlite");

To quote Pim Jager:

The second parameter for the $() wrapper is the context in which to search. This defaults to document.

月下客 2024-09-21 04:23:15

如果有可能单击并再次加载相同的链接,您可能需要使用 .addClass 而不是 .toggleClass.toggleClass 的默认行为是检查该元素上的类是否存在,然后根据结果添加或删除它。

如果您的目的是仅突出显示当前行,您将需要执行以下操作:

$("#row-1", window.parent.document).addClass("highlite")
    .siblings().removeClass("highlite");

You may want to use .addClass instead of .toggleClass if there is a chance that the same link might be clicked and loaded again. The default behavior of .toggleClass is to check for the existence of the class on that element and then add it or remove it based on the results.

If your intention is to have only the current row highlighted, you will want to do something like:

$("#row-1", window.parent.document).addClass("highlite")
    .siblings().removeClass("highlite");
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文