我在页面中动态查找开放标记的字符串,并希望使用JQuery来获取open标记对应的元素的文本。
例如,假设这是我的页面:
<h1 class="articleHeadline">
<NYT_HEADLINE version="1.0" type=" ">
The Arab Awakening and Israel
</NYT_HEADLINE>
</h1>
<author id="monkey" class="mainauthorstyle">
<h6 class="byline">
By
<a rel="author" href="http://topics.nytimes.com/top/opinion/editorialsandoped
/oped/columnists/thomaslfriedma/index.html?inline=nyt-per" title="More Articles
by Thomas L.Friedman" class="meta-per">
THOMAS L. FRIEDMAN
</a>
</h6>
</author>
我找到'<author id="monkey" class= "mainauthorstyle">'
开放标记字符串,并希望得到$("author" id["monkey"] class["mainauthorstyle"]).text()
- &gt; By THOMAS L. FRIEDMAN
。有没有一种简单的方法可以将开放标记标记转换为选择器?我应该用正则表达式解析吗?
编辑:我事先不知道我想要什么元素。我的代码浏览了整个页面,并以'<author id="monkey" class= "mainauthorstyle">'
作为元素的开头。我事先不知道文字。我在任意网页上运行此代码。
答案 0 :(得分:0)
author#monkey.mainauthorstyle
答案 1 :(得分:0)
以下是您的操作方法:http://jsfiddle.net/peduarte/MgbCX/
答案 2 :(得分:0)
我在理解你的问题时遇到了一些麻烦。如果您只想要文本,请使用以下内容:
$("author#monkey.mainauthorstyle").text();
如果您只想在“THOMAS L. FRIEDMAN”是作者时选择元素,那么:
$("author#monkey.mainauthorstyle:contains('THOMAS L. FRIEDMAN')")
// See http://api.jquery.com/contains-selector/ for more info on the :contains() selector
您编辑后更新:
如果您能够确定要选择id为“monkey”和“mainauthorstyle”类的author元素的“text”,则只需要从这些信息位中构建一个jQuery选择器。从那里你可以在生成的jQuery对象上使用text()或html()方法来获取该元素的内容。
正如我上面的例子所示:
$("author#monkey.mainauthorstyle").text();
或 $( “作者#monkey.mainauthorstyle”)的HTML();
请注意,使用的选择器可能过度,因为您应该只需按其ID选择元素。
$("#monkey").text();