关于innerHTML的一个问题

来源:4-1 [JavaScript]对象概述

牛察哈尔灿

2016-08-25 17:14

在W3C看到一个例子,为什么直接写成

var y=document.getElementById("mess").innerHTML

y="错误:"+err+"。"

效果就不行了呢!

具体代码如下

<script type="text/javascript">

function myFunction(){

try

{

var x=document.getElementById("demo").value

if(x=="")    throw "你还没有填写";

if(isNaN(x)) throw "这不是数字"

if(x>10)     throw "数字太大"

if(x<5)      throw "数字太小"

}

catch(err)

{

var y=document.getElementById("mess")

y.innerHTML="错误:"+err+"。"

}

}

</script>

<p>请输入5~10之间的数字</p>

<input id="demo" type="text" />

<button type="button" onclick="myFunction()">点击测试</button>

<p id="mess"></p>

</body>


写回答 关注

3回答

  • vaneX
    2016-08-27 13:45:27
    1.
        var y=document.getElementById("mess") // y是一个对象
        y.innerHTML="错误:"+err+"。" // 改变得是y对象的
    
    2.
        var y=document.getElementById("mess").innerHTML // y是获取的mess的值,也是一个字符串
        y="错误:"+err+"。" // 给y赋值,与mess无关了


    vaneX

    innerHTML 返回的是一个字符串,与其前面的对象无关。

    2016-08-27 13:47:01

    共 1 条回复 >

  • 宝慕林4326916
    2016-08-25 22:11:17

    var y=document.getElementById("mess")  这句后加“;” 试试

  • 宝慕林4326916
    2016-08-25 22:11:05

    var y=document.getElementById("mess")  这句后加“;” 试试

JavaScript深入浅出

由浅入深学习JS语言特性,且解析JS常见误区,从入门到掌握

281111 学习 · 1020 问题

查看课程

相似问题