这在jquery中可能是一件非常简单的事情,但我无法弄明白。我的html文档具有以下结构
<div class="body">
<a href="/question?id=70"><p>This is the text I want to extract</p></a>
</div>
我试过这个
$("body").find("a p").text()
但这似乎对我不起作用。我能够得到段落对象而不是文本。我用console.log测试它没用。
答案 0 :(得分:9)
你应该有什么工作(you can test it here),确保你在DOM准备就绪时运行它,如下所示:
$(function() {
alert($("body").find("a p").text()); //or just $("a p").text()
});
如果它早先运行,元素可能没有准备好,你的选择器将找不到任何匹配。
如果您想选择类 body
,请务必使用".body"
代替"body"
(这会选择<body>
元素) 。这是使用.class
selector的版本:
$(function() {
alert($(".body a p").text());
});
答案 1 :(得分:0)
.html()函数检索内部html节点。
$('.body a p').html();
应该做的伎俩
答案 2 :(得分:0)
不确定这是否会导致问题,但您的标记无效。来自W3C的“The global structure of an HTML document”
通常,块级元素可以包含内联元素和其他块级元素。通常,内联元素可能只包含数据和其他内联元素。这种结构区别的固有特征是块元素比内联元素创建“更大”的结构。
a
元素应该被p
等块元素包含,而不是相反。
答案 3 :(得分:0)
这是html或php文件中的段落元素,它是id assign tt
<p id="tt">ALert Message </p>
&#13;
var tt = $("#tt").text();
alert(tt);
&#13;
适用于jquery-3.1.1.js