<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>document.getElementById</title>
</head>
<body>
<p id="con">JavaScript</p>
<script type="text/javascript">
var mychar=document.getElementById("con");
document.write("结果:"+mychar); //输出获取的P标签。
</script>
</body>
</html>
出来的结果怎么是这样的???
JavaScript
结果:[object HTMLParagraphElement]
理解:document.getElementById(“id”)的结果不是该id名称的标签里的值,而是该id的标签类型。所以左边例子的结果要么为null(也就是没有名为该id的标签),要么是[object HTMLParagraphElement](找到了,那是一个p标签元素)。
如果需要该id标签的内容的话,则该是
var mychar=document.getElementById("con").innerHTML;
我的想法是:
找不到那个ID的时候运行结果为null,找到了ID,获取到了P标签,然后浏览器就会解析,解析出来的就是这个[object HTMLParagraphElement]了。
因为mychar是元素P标签,标签是一个对象,对象通过浏览器的解析出来就是这个。