DOM遍历节点的问题

ai_笑 2013-03-07 01:20:17

<form id="form1">
<input type="text" value="fdsa" />
<input type="button" value="btn" />
</form>

<script type="text/javascript">
function nodeContent(e) {
var type, child, s, nodename = "";
for (child = e.firstChild; child != null; child=child.nextSibling) {
type = child.nodeType;
nodename = child.nodeName;
document.write("nodeName:" + nodename + "的nodeType是:" + type + "<br />")
}
}
var ele = document.getElementById("form1");
nodeContent(ele);
</script>


为什么结果会是:
nodeName:INPUT的nodeType是:1
nodeName:#text的nodeType是:3
nodeName:INPUT的nodeType是:1
nodeName:#text的nodeType是:3

明明form下面只有两个节点啊
...全文
207 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
likeajin 2013-03-07
  • 打赏
  • 举报
回复
标准浏览器会把回车换行解释为一个text节点。对比下面两段html

<form id="form1">
    <input type="text" value="fdsa" />
    <input type="button" value="btn" />
</form>

<form id="form1"><input type="text" value="fdsa" /><input type="button" value="btn" /></form>

87,992

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧