首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用DOM从具有特定ID的分区中获取文本《getElementById帮助》

使用DOM从具有特定ID的分区中获取文本《getElementById帮助》
EN

Stack Overflow用户
提问于 2011-07-16 03:28:21
回答 3查看 1.5K关注 0票数 1

我有以下代码片段,我正在尝试从中获取文本:

代码语言:javascript
运行
复制
<span class="article-title1"><div id="user-sub-summary">Love to get text</div></span>
<div id="user-sub-intro"><p>this is my intro paragraph</p></div>

我尝试只获取id为"user-sub-summary“的文本,最终我将获取此文本并将其显示在一个可编辑的文本框中,以便人们可以根据自己的喜好进行更改。

我的现有代码如下所示($intro =上面的html片段):

代码语言:javascript
运行
复制
$dom = new DOMDocument;
$dom->loadHTML($intro);
var_dump($dom->getElementById('user-sub-summary'));

这只会在页面上返回'NULL‘--但是我不知道为什么。我试着在这里搜索,我用谷歌搜索过,我到处找过了,试图弄清楚这一点,但一无所获。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-16 03:33:14

您需要声明一个doctype。http://www.php.net/manual/en/domdocument.getelementbyid.php#100402

而且,在解析之前验证数据总是一种好的做法。

$dom->validateOnParse = true;

票数 1
EN

Stack Overflow用户

发布于 2011-07-16 03:37:23

首先:我建议使用javascript框架(JQuery)

第二:确保您的DOM已完成加载。

代码语言:javascript
运行
复制
$(document).ready(function(){
    alert($("#user-sub-summary").html());
});

希望它能帮上忙

票数 0
EN

Stack Overflow用户

发布于 2016-05-03 00:40:55

如果您使用的是dynamic HTML或jQuery,请确保在尝试“获取”或选择动态对象之前,已将其附加到文档模型中。也就是说,Javascript的getElementById方法搜索附加到文档根目录的DOM对象(直接或通过彼此附加的其他对象)。

在Javascript中,请参见here以获取附加动态内容的示例。在第11行之后插入alert(currentDiv.innerHTML);以查看所需的文本。

在jQuery中,使用(其中"parentId“是附加到DOM文档根目录的对象的Id ):

代码语言:javascript
运行
复制
var childObject = $('<div id="childId">Text</div>');
$("#parentId").append(childObject);
alert( $("#childId").text() );

代码语言:javascript
运行
复制
alert( childObject.text() );

对于user744186的评论,我假设这是在客户端运行的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6712207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档