这可能是相当的菜鸟,但是在这种情况下我无法找到我需要的jquery选择器.... 所以,让html像
<span style="color:red;">Gender:</span>Drama<br>
<span style="color:red;">Country:</span>USA<br>
我应该使用什么jquery选择器来获得“戏剧”? 提前致谢
答案 0 :(得分:1)
首先,您需要识别<span>
元素,然后立即获取文本节点。由于您的span元素没有任何独特之处,因此您可以使用他们在父元素中找到的顺序来识别它们。
您可以使用:first-child
或:nth-child
等伪选择器来执行此操作。
一旦确定了跨度,就需要选择下一个节点并检索其值。
一个例子:
console.log($('span:first-child')[0].nextSibling.nodeValue)
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
<span style="color:red;">Gender:</span>Drama<br>
<span style="color:red;">Country:</span>USA<br>
</div>
&#13;
答案 1 :(得分:0)
你的问题不是很清楚。
我认为您的内容有父母(&lt; p&gt;?) 我觉得你试图以复杂的方式做某事,而且它可能更简单。
为什么不在其他范围内放置您必须选择的内容? :
var textContent = new Array();
$('p .selector').each(function() {
textContent.push($(this).text());
});
console.log(textContent[0]);
console.log(textContent[1]);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>
<span style="color:red;">Gender:</span><span class="selector">Drama</span><br>
<span style="color:red;">Country:</span><span class="selector">USA</span><br>
</p>
&#13;
答案 2 :(得分:0)
根据@montalenu的回答,我通过以下方式实现了我的目标
alert($('span:contains("Gender")')[0].nextSibling.nodeValue);