[英]Extract out certain divs based on data attribute using Jquery
我有以下 HTML:
<div class="parent">
..More Divs
<div>
...More Divs
<input class="button-input" type="submit" value="false">
</div>
..More Divs
<div >
...More Divs
<input class="button-input" type="submit" value="false">
</div>
<div>
...More Divs
<input class="button-input" type="submit" value="false">
</div>
<div data-action="Block">
<input class="button-input" type="submit" value="false">
</div>
<div data-action="Block">
...More Divs
<input class="button-input" type="submit" value="false">
</div>
<div data-action="Block">
...More Divs
<input class="button-input" type="submit" value="false">
</div>
</div>
我正在尝试获取父级中没有数据操作块的所有 div。 我尝试使用过滤器功能删除块数据操作属性,但没有奏效。 过滤掉没有操作块的 div 后,我需要对输入字段执行一个操作,可以使用.find('input[value="false"]')
$.find(".parent").filter(function() {
return this.find("[data-action='Block']").length ==0;
}));
您可以尝试否定属性选择器:
$("div:not([data-action=Block])",".parent")
您看到的第二个属性.parent
意味着该函数将尝试查找该元素中没有data-action=Block
属性的每个 div
您可以使用 jquery 的 not 函数,它会找到除 not 选择器中的 div 之外的所有 div。
链接 find 方法以缩小结果范围:
$('.parent').find('> div:not([data-action="Block"])').find('input[value="false"]')
第一次查找的结果:
第二个 find 将在第一个的结果中搜索,结果将是:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.