[英]Find next element in jquery
我确实有一些类似这样的html:
<div class="form-group">
<input type="text" class="sequence valid">
</div>
<div class="form-group">
<input type="text" class="sequence valid">
</div>
<div class="someclass1">
<div class="someclass2">
<div class="form-group">
<input type="text" class="sequence valid">
</div>
<div class="form-group">
<input type="text" class="sequence valid">
</div>
</div>
</div>
<div class="form-group">
<input type="text" class="sequence valid">
</div>
<div class="someclass1">
<div class="someclass2">
<div class="form-group">
<input type="text" class="sequence valid">
</div>
</div>
</div>
使用我需要的是,找到一个包含.sequence
和form-group
下一个元素。
这是我在jquery中尝试过的方法:
var $element = $(event.target);
if ($element.hasClass('valid')) {
$element.closest('.form-group')
.next('.form-group')
.find('.sequence')
}
但是它没有选择此代码块中的元素:
<div class="someclass1">
<div class="someclass2">
<div class="form-group">
<input type="text" class="sequence valid">
</div>
</div>
</div>
谁能告诉我如何修改此jquery以使其符合我的要求。 谢谢。
问题是您的.next('.form-group')
正在查找目标元素,因为someclass1
元素与选择器不匹配
$element.closest('.form-group')
.next('.form-group, :has(.form-group)')
.find('.sequence')
或者您可以在next
省略选择器, next
在下一个兄弟元素中找到.sequence
元素
$element.closest('.form-group')
.next()
.find('.sequence')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.