JS 中的appendChild()方法动态添加控件,不刷新时实现了添加,刷新后就还原界面啦,代码如下

functiontestAdd(){varinput=document.getElementById("addMenu1").appendChild(document.c... function testAdd(){
var input=document.getElementById("addMenu1").appendChild(document.createElement("input"));
input.type="button";
input.value="试验";
}
打算动态添加button按钮
展开
 我来答
zwjtk
2015-05-16 · TA获得超过1741个赞
知道小有建树答主
回答量:300
采纳率:82%
帮助的人:209万
展开全部
你好,
如题描述的结果是必然的。
首先,你需要明白两个问题:第一,js浏览器端脚本,执行在服务端内容响应成功之后,它的appendChild方法,只是在浏览器中进行了操作,并未向服务器发送保存请求(命令);第二,当你刷新页面的时候,你实际上是通过浏览器向服务器发送了一个请求,而当请求完成后你看到的界面是从服务端返回来的,并不是由浏览器直接产生。
明白了这两点,我给你举个例子说明下:
我们假设服务端有一个html文件,名为index.html,它包含题中所述的那段js
当你刷新页面的时候,index.html 的内容被请求到了浏览器,这时浏览器将它的内容显示给你
当页面显示完成(这里要看你js的位置或调用方式)之后,客户端js开始执行,将button添加到浏览器显示的内容中
而这时,服务器上index.html文件的内容并没有发生改变
所以当你再次刷新,从服务器取index.html的时候,页面内容就恢复到最初状态了。

希望说清楚了,如有疑问欢迎追问,望采纳~
追问
那我是想要实现动态添加控件的功能,这个appendChild()不能实现吗,没有什么保存的机制吗,保存后再刷新,您有什么好的实现方法实现动态加载控件没有?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式