我正在尝试使用jQuery来查找没有某个类的兄弟的文本区域。目前我正在使用以下内容:
$("textarea").not($("textarea").siblings(".siblingClass").siblings("textarea"))
有替代方案吗?
抱歉缺乏背景信息。我遇到的问题是我有一个运行多次的jquery插件(maxlength)(由于动态变化)并在textareas之后添加了一个div。该插件不会检查它是否已经运行,因此它会多次添加div。
答案 0 :(得分:8)
如果我理解正确,.filter()可能会有用。
$('textarea').filter(function(){
return $(this).siblings('.that-class').length == 0;
});
$('textarea').filter(function(){
return $(this).siblings('.a').length == 0;
}).css( "color", "red" );
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
<div>
<div class="a"></div>
<textarea>one</textarea>
<div class="b"></div>
</div>
<div>
<div class="c"></div>
<textarea>two</textarea>
<div class="c"></div>
</div>
<div>
<textarea>three</textarea>
</div>
<div>
<div class="a"></div>
<textarea>four</textarea>
</div>
</div>