>백엔드 개발 >PHP 튜토리얼 >javascript - 我想在浏览器端直接对网站进行修改但是刷新后就初始化了

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

WBOY
WBOY원래의
2016-06-06 20:07:121069검색

比如我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请求。
解决方案:存放到服务器或者本地呗。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.