gpt4 book ai didi

javascript - Jquery NextUntil 切换表行,奇怪的结果

转载 作者:行者123 更新时间:2023-11-28 09:00:17 24 4
gpt4 key购买 nike

我正在使用 NextUntil 来切换表行。它在一个页面上完美运行,而在另一个页面上它仅切换 NextUntil 中的第一行。据我所知,两个页面上的 jquery 和 HTML 是相同的。

第 1 页。(此处有效)

Jquery。

$(".user-row").click(function () {
$(this).nextUntil(".user-row").toggle();
});

HTML。

<table>
<tr class="user-row">
<tr>....</tr>
<tr class="user-row">
<tr>....</tr>
<tr>....</tr>
<tr class="user-row">
<tr>....</tr>
<tr class="user-row">
<tr>....</tr>
</table>

第 2 页。(不起作用,仅切换第一行)

Jquery。

$(".project-row").click(function () {
$(this).nextUntil(".project-row").toggle();
});

HTML。

<table>
<tr class="project-row">
<tr>....</tr> <----- Only toggles this row
<tr>....</tr>
<tr>....</tr>
<tr class="project-row">
<tr>....</tr> <----- Only toggles this row
<tr>....</tr>
<tr class="project-row">
<tr>....</tr> <----- Only toggles this row
<tr class="project-row">
<tr>....</tr> <----- Only toggles this row
<tr>....</tr>
</table>

以我未经训练的眼睛,我看不出页面之间有什么区别。它们的 CSS 确实略有不同,但我看不出这是如何导致的。

更多信息:

我在 document.ready 上调用这段代码,以隐藏开头的所有子行(子行是 .project-row 或 .user-row 之间的所有行)。

$(".project-row").nextUntil(".project-row").toggle();

它适用于两个页面。但是,如果我在行单击上调用此代码而不是

$(this).nextUntil(".project-row").toggle();

在第 1 页上,它按预期工作,隐藏了所有子行。

在第 2 页上,它隐藏其他 .project-row 行的所有子行,但仅隐藏单击的行的第一个子行。

如有任何帮助,我们将不胜感激,谢谢。

更多信息:

把这个

$(this).nextUntil(".project-row").each(function (i) {
alert($(this).attr("class"));
});

在点击事件中警告“未定义”(因为子行没​​有类)的次数正确。这告诉我 $(this).nextUntil(".project-row) 返回正确的元素。通过切换,this

$(this).nextUntil(".project-row").toggle();

,紧接着它仍然只切换第一行。

最佳答案

找到解决方案。

问题是,我是个胡言乱语的白痴。我在页面上的其他地方自动切换行。不过还是感谢您的阅读。

关于javascript - Jquery NextUntil 切换表行,奇怪的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17853710/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com