Javascript jQuery获取以前的元素,直到包含id为
我想使用jQuery来选择使用.prevUtil和元素的元素,该元素包含一个id为包含特定字符串的输入。我认为这应该是可能的,但我似乎无法让它工作 html示例:Javascript jQuery获取以前的元素,直到包含id为,javascript,jquery,Javascript,Jquery,我想使用jQuery来选择使用.prevUtil和元素的元素,该元素包含一个id为包含特定字符串的输入。我认为这应该是可能的,但我似乎无法让它工作 html示例: <ul> <li><input /></li> <li><input id="stop" /></li> <li><input /></li> <li><input
<ul>
<li><input /></li>
<li><input id="stop" /></li>
<li><input /></li>
<li><input /></li>
<li><input /></li>
<li><input id="start" /></li>
<li><input /></li>
</ul>
有一个JSFIDLE
如果示例工作正常,则从包含li的开始到包含li的停止的每个元素都将是红色。您需要使用选择器而不是选择器作为包含指定文本not属性的select元素
$('#start').parent().prevUntil('li:has([id*="stop"])')
谢谢你,是什么原因使我写它的方式不起作用?为什么让选择器里面有这么复杂?更简单、更直接。@T.J.克劳德:现在回答你的问题,我有完整的信息。。。因为OP没有提及标识符是需要部分匹配的生成字符串,即它们都以stop开头。当然,这意味着开始标记同样错误,所以这个答案也不完整。我已经删除了我的答案,将从愚蠢中休息几天。niao的Ciao:@LukeCaldwell:这个信息真的应该在问题中。它是。问题标题说获取以前的元素,直到包含id为containing的元素。第一句话是用一个包含特殊字符串的id?它并没有说开始标记需要有这个条件。你有没有具体的理由发布第二个答案?我错过了什么特别的东西吗?
$('#start').parent().prevUntil('li:has([id*="stop"])')