Google Chrome下无法获取标签innerHTML问题

测试HTML:

 1 <html xmlns="http://www.w3.org/1999/xhtml">
 2 
 3 <head>
 4 
 5 </head>
 6 
 7 <body ><p id="msgp">
 8 
 9 <div>
10 
11 <span id="msg">
12 
13 xxxxxxooooo</span></div></p>
14 
15 </body>
16 
17 </html>

问题症状:通过document.getElementByID("msg").innerHTML 无法获取span标签的内容,获取值的永远都是空。

解决思路:通过对出现问题的页面进行dom删除,剩下最终出问题的部分。最终确定是由于没有遵循HTML规范在P标记中包含div导致页面渲染成另外一种形式。复制出Chrome开发工具生成的代码如下 

1 <html xmlns="http://www.w3.org/1999/xhtml"><head>
2 </head>
3 <body><p id="msgp">
4 </p><div>
5 <span id="msg">
6 xxxxxxooooo</span></div><p></p>
7 
8 </body></html>

最后把p标签修改成div标签解决了问题。

 

由于没写过文章,说有只是把问题记录下来。方便遇到类似问题的人能搜索到,不必花较多时间去查找原因。

 

posted @ 2012-07-10 12:09  xu.c  阅读(2581)  评论(0编辑  收藏  举报