document.getElementById("test").value
document.getElementById("test").innerHTML
第一个是指地址,第二个是指存储在地址的值吗?另外,我在哪里可以找到value
属性的文档?
答案 0 :(得分:10)
.value
为您提供表单元素的当前设置值(input
,select
,textarea
),而.innerHTML
构建基于HTML的字符串在元素包含的DOM节点上。
举一个简单的例子,转到JS Fiddle demo,然后在input
中输入一个新值,然后移出输入。
该测试使用以下JavaScript:
document.getElementById('input').onchange = function(){
alert('innerHTML: ' + document.getElementById('input').innerHTML + '; whereas value: ' + document.getElementById('input').value);
};
(上述文字在am not i am留下的评论后更新,在下面的评论中。)
答案 1 :(得分:3)
某些HTML
元素具有属性"value"
,例如<input/>
其他一些元素没有。
如果要修改它们,可以使用DOM属性(与Javascript
一起使用)innerHTML
(如果有的话)。此属性表示元素的内容,因此它可用于接受嵌套其他元素的元素,例如<div/>
,
答案 2 :(得分:3)
HTML中的许多元素都可以有ID,因此value
的定义会因每个元素而改变。
value
本质上是该元素理解为值的东西。例如,<input type=text>
会为您提供内部文字。
innerHTML
将是HTML代码的内容。例如,<TR>
会有其子TD
,以及其他任何内容。
value
和innerHTML
可以(通常)写入和阅读。
答案 3 :(得分:1)
它与某些标签的工作方式有关,这些标签基于其属性,其他标签处理开始标记和结束标记之间的文本。
.value
检索为代码的value
属性设置的任何值。 .innerHTML
检索开始和结束标记之间的内容。
例如,如果HTML标记是
<input type="text" value="Enter name here" id="user_name" />
你使用了JavaScript
var name = document.getElementById('user_name').value
将声明一个变量name
并为其赋予值“在这里输入名称”(假设用户没有更改它)。另一方面,如果您有像
<div id="abc">blah blah</div>
然后你会用左
var text = document.getElementById('abc')
这会将变量text
设置为“blah blah”。
答案 4 :(得分:0)
document.getElementByid('test').value
用于在文本字段中给出值。像
<input type="text" id="test" name="test">
现在它把价值放在这个文本中。
document.getElementByid('test').innerHTML
用于在指定区域给出值。喜欢
<div id="test">
</div>
现在它在div区域内打印值。