jquery用class查找下一个元素

xzlaal3s  于 2023-05-17  发布在  jQuery
关注(0)|答案(3)|浏览(132)

我试图找到下一个元素与类的“错误”和碰壁。
在jQuery的网站上看演示,这应该工作,但没有。

$("button[disabled]").next().text("this button is disabled");

<div>
   <button disabled="disabled">First</button>
   <span>no overwrite</span>
   <span class="error"></span>
</div>

<div>
   <button>Second</button>
   <span></span>
</div>

<div>
   <button disabled="disabled">Third</button>
   <span>no overwrite</span>
   <span class="error"></span>
</div>

我试图找到有问题的元素后面的span或div或其他东西,就像上面的按钮一样。
因此禁用的按钮行应显示“禁止覆盖此按钮已禁用”
我试过了
$("button[disabled]").next(".error").text("this button is disabled");
但毫无结果

wqsoz72f

wqsoz72f1#

问题是你使用的是下一个遍历函数而不是nextAll

$("button[disabled]").nextAll(".error").text("this button is disabled");

当你使用next的时候,它只是查看“next”元素,它是

<span>no overwrite</span>

接下来所有看所有的兄弟姐妹是下一个

slsn1g29

slsn1g292#

试试这个:

$("button[disabled=disabled]").parent().find("span.error").text("this button is disabled");

希望对你有帮助。希南

c7rzv4ha

c7rzv4ha3#

next()在这种情况下不起作用,因为它必须是一个兄弟节点才能起作用。在这种情况下,您需要:

$("button[disabled]").parent().nextAll()
  .find("span.error:first").text("this button is disabled");

相关问题