jQuery 链接和切换未运行

发布于 2024-08-08 05:15:51 字数 373 浏览 5 评论 0原文

如果我运行此代码,

var waitRow = $(this).parent().parent().next().get(0);
$(waitRow).children('td:nth-child(2)').html('some text').toggle();

则不会调用切换。

如果我改为编写以下代码,它就可以工作。为什么?

var waitRow = $(this).parent().parent().next().get(0);
$(waitRow).children('td:nth-child(2)').html('some text');
$(waitRow).toggle();

If I run this code,

var waitRow = $(this).parent().parent().next().get(0);
$(waitRow).children('td:nth-child(2)').html('some text').toggle();

toggle is not called.

If I instead write the following code it works. Why?

var waitRow = $(this).parent().parent().next().get(0);
$(waitRow).children('td:nth-child(2)').html('some text');
$(waitRow).toggle();

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

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

发布评论

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

评论(2

若无相欠,怎会相见 2024-08-15 05:15:51

因为您要切换子元素,而不是 waitRow,所以我相信您可以使用 .end() 来执行此操作:

$(waitRow).children('td:nth-child(2)').html('some text').end().toggle();

返回父元素。或者再次使用.parent()

参考:http://docs.jquery.com/Traversing/end

Because you are toggling the child element, not waitRow, I believe you could use .end() for this:

$(waitRow).children('td:nth-child(2)').html('some text').end().toggle();

To go back to the parent. Or use .parent() again.

Reference: http://docs.jquery.com/Traversing/end

云朵有点甜 2024-08-15 05:15:51

第一个尝试切换 children('td:nth-child(2)') 包装集中的第一项。 html() 方法返回第一个匹配的项目,而不是整个集合。

第二个切换整行。

The first one tries to toggle the first item in the children('td:nth-child(2)') wrapped set. The html() method returns the first matched item and not the whole collection.

The second one toggles the whole row.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文