【发布时间】:2011-04-18 02:10:44
【问题描述】:
我有这个小脚本:
<input name="n1" value="test">
<br/><span></span>
<br/>
<span style="background-color:red">after input</span>
这里是js:
$('input[name=n1] ~ span:first').html('new content');
在我将“br”(输入后)更改为“p”之前,它工作正常。这是一个 jQuery 错误还是我的查询错误?谢谢。
【问题讨论】:
-
好吧,如果你放一个
,那么span就不再是兄弟了。
-
提示: 始终检查生成的 HTML。然后你会注意到
<p />标记以及它产生的问题(<p>不是自闭合标记)。所以答案是:既不是错误,也不是选择器错误。你的 HTML 是。 -
您在这个问题中给出的示例(不是在小提琴中)按预期工作。它选择出现在输入之后的第一个跨度兄弟,并将内容设置为
"new content"。该跨度是您在<br>标记之后添加的空跨度。
标签: javascript jquery css jquery-selectors