日期:2014-05-17  浏览次数:20608 次

验证码问题session出问题了。。。。。。


每次点击验证码时,验证码改变,但是下面的<s:property value="#session.imageCode"/>
不会改变,只有当整个页面F5刷新时,<s:property value="#session.imageCode"/>才会改变
且显示的都是上一次的验证码?这是什么原因?查了好久都不知道什么原因。。求解释??
------解决方案--------------------
当你点击页面上的更换验证码的时候,只有验证码的图片的改变了,session里面的验证码也改变了,但是你的页面没有刷新,刷新的只有验证码的图片,所以在最下面的验证码并没有改变,而每次刷新都会现实上一次的验证码是因为,你刷新的时候,加载页面到验证码的时候,验证码会发送一个请求到后台去获取验证码,而在请求还没有返回的时候就已经执行了<s:prooerty>标签,所以获取的是上一次的验证码。我想在你第一次打开页面的时候,下面应该加载不到验证码才对
------解决方案--------------------
肯定不会变啦,页面都没有刷新,现在不是有专门一个验证码的jsp的么,用那个就很好解决了,页面上提交输入的验证码,然后后台读取页面的验证码和真的验证码,然后比较就ok了。。。
------解决方案--------------------
需要有专门一个验证码的jsp,这个牵扯到同步异步的问题
------解决方案--------------------
百度一下好多解决方案。
------解决方案--------------------
把验证码重新写一个jsp就可以了,也就是说  把验证码单独的放在一个jsp页面内,这样也通过js好刷新,你的做法不妥。。