<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
<!--
#container {
margin: 5px auto;
height: 100%;
width: 900px;
border: 1px solid #99CC00;
}
#container textarea {
height: 100px;
width: 100%;
}
-->
</style>
<script type="text/javascript">
<!--
function runex(){ var txt = document.getElementById("t1");
alert("value值:" + txt.value);
alert("innerHTML值:" + txt.innerHTML);
document.write(txt.innerHTML);//运行这句时页面显示HTML标签;
//document.write(txt.value);//运行这句时页面显示解析后的效果;
}
-->
</script>
</head>
<body>
<div id="container">
  <h3>复制代码</h3>
  <textarea name="t1" id="t1">&lt;span style="color:#FF0000"&gt;红色字体&lt;/span&gt;</textarea>
  <input value="运行代码" type="button" onclick="runex()">
</div>
</body>
</html>
以上代码中的value和innerHTML属性到底有什么区别呀?

解决方案 »

  1.   

    value和innerHTML没太大关系。
    表单内控件的属性用value取输入值
    对于DOM的元素,用innerHTML取其内部元素代码.
      

  2.   

    innerHTML是一对标签内的元素。<div id="test">Text</div>
    这里document.getElementById("test").innerHTML就等于"Text"
      

  3.   

    是2个完全不同的东西
    补充下:innerHTML不在W3C标准内
      

  4.   

    innerHTML输入/出的该DOM的内部纯HTML代码(流)
    value(innerText) 输入/出的是转义的文本(字符串)
      

  5.   

    innerHTML包括htmldaim
    value直接是值
    就好比一个是<p>a</p>,另一个是a
      

  6.   

     简单的说:
           innerhtml就是把东东插入此对象的二个HTML代码之间,并清空旧的中间的东东,   如a_id.innerHTML   =   "dddd";本来的<a>kkkk</a>变成<a>dddd</a>
          补充说明:
          就是在对象的的二个HTML格式符之间清空原来的内容,再插入新内容,而OUTERHTML是把对象本身包含子对象清空,然后在它这个位置插入新的内容,而INNERTEXT却是插入文本,当包含有如<等HTML格式符的关键字符时,会自动转义,反正你插入的内容全显示,而XHTML即当做一段HTML来解释,HTML格式代码是不会显示的,
      

  7.   


    分析的比较专业。 不过innerHTML 挺有用的。 经常找到TD div等的html 元素时候,它们是没有value 或者是text 这个属性的。只能用innerHTML。
      

  8.   

    innerHTML在HTML代码中的HTML代码会被解析。
    如类似下面的效果:<div id="d1"><font color=#FF0000>你好</font></div>
    这里document.getElementById("d1").innerHTML就等于<font color=#FF0000>你好</font>
    但是却显示
    你好
      

  9.   

    很明显,value就是值,innerHTML就是代码。