请教一个简单的问题
提交表单后,当程序中途返回表单页面时候,如何使用户已填写的数据保留在表单上,用什么方法比较容易实现?使用js的histroy.back(),好像不行是吧?
就比如说会员注册,当用户提交数据格式有误(用php判断,不是JS),返回到表单页面,希望能保留用户填写的信息……
一直没有很认真去处理这样的问题,在这里请有经验的高手赐教,谢了!
问题点数:50、回复次数:9Top
1 楼xhbmj(《升龙道》)回复于 2006-03-01 18:00:49 得分 0
我也想知道,不要给我分。
asp里用session或js都可以。php不会,楼下继续Top
2 楼bigluckyfox(幸运狐狸)回复于 2006-03-01 18:04:35 得分 5
Session 或Cookies都可以考虑哦Top
3 楼mynamesucks(迅雷不及掩耳盗铃之势如破竹)回复于 2006-03-01 18:05:44 得分 5
写session里
退回后把session读出来填进去Top
4 楼lzkd(浪子快刀)回复于 2006-03-01 18:09:10 得分 10
这个不难,就是写起来麻烦一点,用模版比较方便一点
基本思路
1 在判断值是否正确之前,将输入的各项值保存起来(建议进session,用数组比较方便)
2 判断是否正确
3 如错误则返回输入页面.
在输入页面的顶部放上一个判断,检测该session值(就上面说的那个)值是否存在.如存在,则将相应值代入相应部分.如不存在,则显示一个空白的输入页面.
具体代码就不给了.用phplib,smartTemplate等模版要方便一点.Top
5 楼thisky(···Cos.X···)回复于 2006-03-01 19:19:00 得分 5
就是说如果填的内容有错,则返回,且原来填的东西还在
直接输出JS语句
<script>
alert('这样不对喔~')
history.go(-1)
</script>
原来的东西都会在的
我试过,IE的可以,其它的就不知道了Top
6 楼ccxxcc(cc小超)回复于 2006-03-01 20:46:31 得分 20
你把服务器端session代码改一下 session开始前加一句代码就可以了,通知浏览器缓存
session_cache_limiter("private, must-revalidate");
session_start();
在用history.back()就可以Top
7 楼fl99(笨笨(QQ:250009333))回复于 2006-03-01 22:07:26 得分 0
怎么不用AJAX,达到你的要求,而且节约网络资源,。Top
8 楼erldy(我还是我)回复于 2006-03-02 09:01:47 得分 0
AJAX是怎样运用法呢,有人知道吗?
Top
9 楼hailang6(翠峰)回复于 2006-03-02 13:26:32 得分 5
可以把表单写成函数啊
出错时直接调用这个函数,表单的值为接受提交的数据就可以了啊
不用js返回Top




