各位大大帮忙看下这段js代码 为啥用函数添加了节点就全部载入了
<divid="div1"onClick="read()">单击我</div><inputtype="button"/><scriptlanguage="javascri...
<div id="div1" onClick="read()">单击我</div>
<input type="button" />
<script language="javascript" type="text/javascript">
var div1= document.getElementById("div1");
div1.onclick=function()
{
div1.appendChild(document.createTextNode(document.write("aaa")));
}
</script>
为啥在div1这个节点里面用document.write方法添加了文本节点就直接 载入这个函数生成的字符了,那个botton元素不见了啊~
我要document.write的对象是包含有好多个div元素的控件啊~我想实现点击载入的动态控制 但是也不能整个页面就载入这个东西啊 咋办呢 展开
<input type="button" />
<script language="javascript" type="text/javascript">
var div1= document.getElementById("div1");
div1.onclick=function()
{
div1.appendChild(document.createTextNode(document.write("aaa")));
}
</script>
为啥在div1这个节点里面用document.write方法添加了文本节点就直接 载入这个函数生成的字符了,那个botton元素不见了啊~
我要document.write的对象是包含有好多个div元素的控件啊~我想实现点击载入的动态控制 但是也不能整个页面就载入这个东西啊 咋办呢 展开
2个回答
展开全部
你这个函数是在点击之后触发的,也就是说整个页面载入之后才触发的,这个时候,调用write方法不是追加内容,而是覆盖整个页面的内容,所以你整个页面点击之后应该只剩下aaa这三个字符串了吧。
你可以这样在div1中追加子div
var div = document.createElement("div");
div.innerHTML = 'aaa';
document.getElementById("div1").appendChild(div);
你可以这样在div1中追加子div
var div = document.createElement("div");
div.innerHTML = 'aaa';
document.getElementById("div1").appendChild(div);
追问
多谢回答了 看你打的字最多就选你为正确答案吧 innerHTML 插入的内容浏览器不解析的 我用 outerHTML解决了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询