3

我有个问题。我有一个来自 HTML 页面的字符串。我需要捕获特定字符串“附近”的元素,例如:

<p>This is some text</p>
Ratings:
<strong><a href="http://www.foo.co">Kids +13</a></strong>

我需要获得“评级:”,然后捕获最接近的下一个元素。我可以用 jQuery 做吗?我试过了,但我不明白我可以使用哪个文本“评级:”选择器。

谢谢。

4

3 回答 3

0

Ratings:将文本包装在<span>标签中并应用class属性,如下所示:

<p>This is some text</p>
<span class="ratings">Ratings:</span>
<strong><a href="http://www.foo.co">Kids +13</a></strong>

然后您可以选择Ratings:文本,如下所示:

$(".ratings:contains(Ratings\:)")

最后,您可以使用 jQuery函数来获取所选元素.next()的紧随其后的兄弟(在您的情况下为 tag ),如下所示:<a>

$(".ratings:contains(Ratings\:)").next()

请参阅示例jsFiddle

于 2013-08-16T15:31:20.817 回答
0

最好的方法是给你一个这样的课程:

<a href="#" class="ratings">Kids +13</a>

在你的 jQuery 中,它就是这样的:

$('.ratings').html()

这将返回: Chrome 控制台输出

如果要保存,只需添加

var rating = $('.ratings').html()

如果你有一个以上的评级,它会有点复杂,但不会太多。

于 2013-08-16T15:19:01.763 回答
0

这对我有用:

http://jsfiddle.net/LykFa/1/

 $("body:contains(Ratings\:)").find("strong").html();

它并不漂亮,并且并非在所有情况下都有效,但它确实适用于您的示例。如果你能举出其他例子,我们或许能提供更多帮助。

于 2013-08-16T15:19:13.873 回答