【问题标题】:Capture innerHTML using document.getElementById使用 document.getElementById 捕获 innerHTML
【发布时间】:2013-03-10 03:27:30
【问题描述】:

我正在使用 JavaScript 通过 document.getElementById('').innerHTML 为空 div 分配一个值,它工作正常,我可以看到单词更新并出现在浏览器上。然后我尝试捕捉这些词,但一直将其视为未定义。

我的 HTML 是

<div id="name"> </div>

JavaScript 执行这个:

function doneloading(first_name) {
  document.getElementById('name').innerHTML = first_name;
}

我尝试使用:

var photoname = document.getElementById('name').value;
alert(photoname);

一般不能捕获innerHTML吗?提前致谢!

【问题讨论】:

  • 你什么时候调用那个捕获代码?
  • @Ahmad 您正在设置innerHTML 属性,但正在检索value 属性。您应该尝试检索 innerHTML 属性。
  • 我肯定会在 div 更新并在浏览器上显示名称后调用它
  • @kalaero 感谢您的评论。我在发布我的问题之前尝试过,它也没有工作。仍然未定义......
  • @kalaero 我刚刚又试了一次,这次成功了。哇。非常感谢!没有你的帮助不会再试一次:)

标签: javascript html


【解决方案1】:

试试:

var photoname = document.getElementById('name').innerHTML;

【讨论】:

  • 我之前尝试过,但它仍然显示为未定义,但由于某种原因它现在可以正常工作,所以谢谢!
【解决方案2】:

您可以像设置它一样访问元素内的值。

var innerHTML = document.getElementById('name').innerHTML;

这还将返回特定元素中任何嵌入的 HTML 标记的代码。请参阅 w3school 的 innerHTML property 文档。

【讨论】:

  • 我之前尝试过,但它仍然显示为未定义,但由于某种原因它现在可以正常工作,所以谢谢!
【解决方案3】:

innerHTML 输出代码为 html 代码: 如:

<div id="demo"><div id="name">The demo said is right</div></div>
var domNameHtml=document.getElementById('name').innerHTML;

domNameHtml 值是 demo 说的对 如果要更改有关 div html 代码的 dom 对象; 一定是这样的:

document.getElementById('name').innerHTML='<div id="name">The demo said is right</div><h1>Integral is my</h1>';

html代码更改:

<div id="demo"><div id="name">The demo said is right</div><h1>Integral is my</h1></div>

如果你想改变关于div文本代码的dom对象;

var text=document.getElementById('name').innerTest; 文本值为【demo说的对】去掉了html代码

希望能帮到你

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-14
    • 2012-02-21
    • 1970-01-01
    • 1970-01-01
    • 2021-10-07
    相关资源
    最近更新 更多