当前位置:Gxlcms > PHP教程 > javascript-我想在浏览器端直接对网站进行修改但是刷新后就初始化了

javascript-我想在浏览器端直接对网站进行修改但是刷新后就初始化了

时间:2021-07-01 10:21:17 帮助过:3人阅读

比如我JS写了点击事件,点击以后添加一行文字在网页上,但是刷新后文字就消失了。
我想保持永久修改的话是不是要用到PHP?

回复内容:

比如我JS写了点击事件,点击以后添加一行文字在网页上,但是刷新后文字就消失了。
我想保持永久修改的话是不是要用到PHP?

合理的姿势应该是:

  1. js在客户端新增了内容(本题中是dom节点),同时应该ajax告知服务器端数据变化

  2. 下次刷新页面时,服务器端(本例中是php)根据新的数据渲染页面时就包含了上次在客户端增加的节点

建议多看一点网站开发方面的文章或者书

浏览器只对网页源文件的内容进行解析和渲染

代码加上的内容,自然会被清除。除非,你把它存在某个地方:

  • 存在服务器端。用ajax获取。

  • 存在 localstorage。用 localstorage API 获取。

我觉得你的应用场景应该类似于那种比较大的表单,当用户不小心误操作关闭窗口的时候,保存下他之前填写的内容。
这种情况用本地存储就好了,localstorage/sessionstorage/cookie。
当然发送给后台也可以,但是会增加后台的工作量,你们的后台人员估计不会愿意去做。

理论上你的页面中,需要动态追加的内容区域应该是动态展示区,它的内容需要在服务器端进行存储的。
JS动态追加效果是为了减少数据跟服务器端交互时,用户等待时间过长,影响用户体验,所以js点击某个事件时有两个操作:
1.将内容动态添加到页面的dom节点上去(用户立刻看到效果)
2.通过ajax、表单提交等技术将内容提交到服务器端处理(数据过滤、存储等)
当用户再刷新页面时,那个动态区域是通过PHP服务器解析生成的内容,同时把最新的内容展现出来,保证数据不会丢失。

和php没什么关系,很多语言都能处理Post和Get请求。
解决方案:存放到服务器或者本地呗。

人气教程排行