2009-04-16 55 views
2

如何检索href标签之间的文本?使用jQuery,我如何获取元素的文本值?

<a href="blah">GET THIS TEXT</a> 

它被包裹在这个DOM:

<div class="c1"> 
    <div class="c2"><a href="#">GET THIS TEXT</a> 
    </div> 
</div> 
+0

一个更好的标题可能是:“使用jQuery,我如何获取元素的文本值?”。 Href是一个属性,而不是标签。 – 2009-04-16 03:37:24

+0

是的..修正了标题。 :x – 2009-04-16 03:43:14

回答

22

您正在寻找text()属性:

$('a', 'div.c2').text(); 

原因div.c2被定义为第二个参数是因为它会再是选择器的context。通过当您使用$(),通过指定div.c2默认的jQuery搜索整个文档也只会有一类C2的<div>的内部搜索。

谨记这一点,你也可以把上面的是这样的:

$('div.c2 a').text(); 

大多数人都喜欢这一点,因为它是你会用它来选择在CSS样式表这个元素的语法。但是,jQuery然后必须弄清楚。你甚至可以这样做:

$('div.c2').find('a').text(); 

但是,我更喜欢上下文方法,因为我觉得它更干净,边缘更快,并不重要。

还有html()属性,其中获取内容包括HTML

所以,如果你的链接是这样的:

<a href='#'><b>Hi There</b></a> 

然后:

$('a').text(); // would return Hi There 
$('a').html(); // would return <b>Hi There</b> 
4

我认为.text().html()将工作,取决于你是否没有或不想做任何标记的是出现在标签内。

var txt = $('div.c2 > a').text(); 

var html = $('div.c2 > a').html() 
相关问题