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按钮 展开
var input=document.getElementById("addMenu1").appendChild(document.createElement("input"));
input.type="button";
input.value="试验";
}
打算动态添加button按钮 展开
1个回答
展开全部
你好,
如题描述的结果是必然的。
首先,你需要明白两个问题:第一,js浏览器端脚本,执行在服务端内容响应成功之后,它的appendChild方法,只是在浏览器中进行了操作,并未向服务器发送保存请求(命令);第二,当你刷新页面的时候,你实际上是通过浏览器向服务器发送了一个请求,而当请求完成后你看到的界面是从服务端返回来的,并不是由浏览器直接产生。
明白了这两点,我给你举个例子说明下:
我们假设服务端有一个html文件,名为index.html,它包含题中所述的那段js
当你刷新页面的时候,index.html 的内容被请求到了浏览器,这时浏览器将它的内容显示给你
当页面显示完成(这里要看你js的位置或调用方式)之后,客户端js开始执行,将button添加到浏览器显示的内容中
而这时,服务器上index.html文件的内容并没有发生改变
所以当你再次刷新,从服务器取index.html的时候,页面内容就恢复到最初状态了。
希望说清楚了,如有疑问欢迎追问,望采纳~
如题描述的结果是必然的。
首先,你需要明白两个问题:第一,js浏览器端脚本,执行在服务端内容响应成功之后,它的appendChild方法,只是在浏览器中进行了操作,并未向服务器发送保存请求(命令);第二,当你刷新页面的时候,你实际上是通过浏览器向服务器发送了一个请求,而当请求完成后你看到的界面是从服务端返回来的,并不是由浏览器直接产生。
明白了这两点,我给你举个例子说明下:
我们假设服务端有一个html文件,名为index.html,它包含题中所述的那段js
当你刷新页面的时候,index.html 的内容被请求到了浏览器,这时浏览器将它的内容显示给你
当页面显示完成(这里要看你js的位置或调用方式)之后,客户端js开始执行,将button添加到浏览器显示的内容中
而这时,服务器上index.html文件的内容并没有发生改变
所以当你再次刷新,从服务器取index.html的时候,页面内容就恢复到最初状态了。
希望说清楚了,如有疑问欢迎追问,望采纳~
追问
那我是想要实现动态添加控件的功能,这个appendChild()不能实现吗,没有什么保存的机制吗,保存后再刷新,您有什么好的实现方法实现动态加载控件没有?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询