4

我目前正在使用一堆输入文本字段,我想将其更改为 DIV,但我的大多数 JS 函数document.getElementById("inputField1").value都会在输入字段的值设置如下时使用:

<input contenteditable="false" id="inputField1" type="text" size="12" style="background:#09F;color:#FFF;text-align:center" value="Hello World!"/>

如果我要Hello World!alert

如果我要使用 DIV,我将如何获得中间文本的值?

例如<div id="inField001">Hello World</div>

谢谢!

4

5 回答 5

8

在这种情况下,您可以使用:

document.getElementById('inField001').innerHTML

或者:

document.getElementById('inField001').innerText 

或者:

document.getElementById('inField001').textContent

另外(如果你想使用 jQuery):

$('#inField001').text()
于 2013-05-24T18:03:36.547 回答
5

你会做的

var value = document.getElementById('inField001').innerHTML);

但是,如果您的 DIV 有一些 html,这也会抓住它。

.innerHTML

您还可以使用document.getElementById('inField001').textContent)忽略任何元素包装器仅从元素中获取文本节点。

但是对 textContent 的支持不如 innerHTML。有关信息和支持,请参阅文档。

另一种方法是使用innerText. alert(document.getElementById('inField001').innerText);但在 FF 中不支持。

请参阅文档以获得支持。

小提琴

于 2013-05-24T18:03:21.877 回答
1

使用 innerHTML 属性。

document.getElementById("inField001").innerHTML

顺便说一句,这种事情用 jQuery 做得更好。

于 2013-05-24T18:03:35.163 回答
0

仅用于文本内容:

var value = document.getElementById('inputField1').textContent;

有关更详细的版本,请参见此处。

于 2013-05-24T18:06:31.417 回答
-1

或者只是做

x = document.getElementById("inField001");
alert(x);
于 2013-05-24T18:07:26.627 回答