你用struts2如何实现验证码的
你用struts2怎么实现验证码的?
先说一下我实现验证码基本代码:
这是Admin_Left.jsp的代码
下面是action的代码:
我的问题很简单,就是单击“看不清,换一张”这个链接时,本来是只想更新<img id="im"/>这里的验证码,但结果是被跳转到另一个页面,这个页面就只有验证码这张图片。。。。?
我想可能是我后台传回来的是一张图片,所以点击这个链接就直接显示图片了?这该怎么改?没想出来
------解决方案--------------------
你可以再显示图片的那个链接里面链接到那个struts里面的action
------解决方案--------------------
或者你可以使用ajax实现异步刷新
------解决方案--------------------
一个验证码还用得着异步刷新吗
我的做法是用jsp做一个验证码页
如:img.jsp
然后在<img src="img.jsp"/>这样就实现验证码效果了
具体img.jsp怎么写 本人空间代码里有 希望对你有用
------解决方案--------------------
先说一下我实现验证码基本代码:
这是Admin_Left.jsp的代码
- JScript code
<script type="text/javascript"> /* 注册dojo事件用来显示验证码 */ dojo.addOnLoad(function() { dojo.event.topic.subscribe('/retrieveUser', this, function(data, type, e){ if(type == 'load') { showUser(data); } else if(type == 'error') { alert('Can not retrieve the Vocde'); } }); }); function showUser(strUser) { var UserHolder = document.getElementById('im'); UserHolder.src ='getVocde.action'; } </script> <s:url id="userUrl" value="getVocde.action" /> <td colspan="2"> 验证码 <input maxlength="4" size="2" name="logon.vcode"> <img border="0" src="getVocde.action" width="57" height="22" id="im" align="middle"> <a target="main" href="MyCountManager/BSP_User_getpass.jsp"> 找回密码</a> <sx:a href="%{userUrl}" notifyTopics="/retrieveUser">看不清,换一张</sx:a>
下面是action的代码:
- Java code
@Action(value ="getVocde", results = {@Result(name = "input", type = "stream",params={"contentType", "image/jpeg", "contentDisposition", "filename=document.jpeg","bufferSize", "1024"})}) public String execute()throws IOException { VImage v=new VImage(); //这是生成验证码的servlet try { v.doGet(ServletActionContext.getRequest(), ServletActionContext.getResponse()); } catch (ServletException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return "input"; }
我的问题很简单,就是单击“看不清,换一张”这个链接时,本来是只想更新<img id="im"/>这里的验证码,但结果是被跳转到另一个页面,这个页面就只有验证码这张图片。。。。?
我想可能是我后台传回来的是一张图片,所以点击这个链接就直接显示图片了?这该怎么改?没想出来
------解决方案--------------------
你可以再显示图片的那个链接里面链接到那个struts里面的action
------解决方案--------------------
或者你可以使用ajax实现异步刷新
------解决方案--------------------
一个验证码还用得着异步刷新吗
我的做法是用jsp做一个验证码页
如:img.jsp
然后在<img src="img.jsp"/>这样就实现验证码效果了
具体img.jsp怎么写 本人空间代码里有 希望对你有用
------解决方案--------------------