问答详情
源自:8-17 编程练习

innerHTML和value的效果区别?

  <p>
    <b id="a">7</b>秒后回到主页&nbsp<a href="javascript:goBack()">返回</a>
  </p>
  
  <script type="text/javascript">  
      var sec=document.getElementById("a")
      var i=7;
      setInterval(function (){
          i--;
          sec.innerHTML=i;

      在上面的代码里如果把最后一行的sec.innerHTML=i 换成sec.value=i ,就不能实现数字倒计时的效果,显示的一直都是“7秒后回到主页“,这是为什么呢? value不能重复赋值吗?求解释呀...innerHTML和value原理上有什么不同呢?

提问者:慕函数7042876 2016-10-19 15:10

个回答

  • 慕粉4228637
    2016-10-19 20:15:01
    已采纳

    innerHTML 属性设置或返回开始和结束标签之间的 HTML。

    value 表单元素特有的属性,有的元素没有value.

    如:<option value="1" id="option1">选项1</option>

    document.getElementById("option1").value  为 :1;

    documnet.getElementById("option1").innnerHTML为: 选项1.

  • qq_指间倖褔_04160304
    2016-10-19 17:23:45

    肯定是不同的,因为你使用的这个innerHtml的方法是用来获取html的元素内容,像这里就是获取b标签下的文本节点7这个内容,所以你要改变的也是这个,此value并不像java或其他编程语言的value相当于值的意思,所以不能使用value。