BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #17080同步于 2011/1/9
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

求教:struts架构的jsp页面取不到form表单的值

kuqiwangzi
2011/1/9镜像同步3 回复
代码如下 jsp跳转页面 function goBack(){ window.location="../user.jsp"; } function search(){ var num = "<%= ((Users)session.getAttribute("current_user")).getuid()%>"; //document.write(currentPassword); //document.write(document.getElementById("password").value); if(num!=document.getElementById("number").value && num!="admin"){ alert("请输入您自己的学号或者工号!"); document.getElementById("number").focus(); return; } var typ="<%= (String)request.getParameter("typ")%>"; if(typ=="stu"){ window.location="finStu.do?sno="+document.getElementById("number").value; } else{ window.location="finTea.do?tno="+document.getElementById("number").value; } } </script> </head> <body> <form> <table border="0" align="center"> <tr> <td>请输入您的学号或者工号:</td> <td><input name="number" type="text" id="number" size="10" maxlength="10"></td> </tr> </table> <div align="center"> <input name="btnSearch" type="button" id="btnSearch" value="查询" onclick="search()"> <input name="btnBack" type="button" id="btnBack" value="返回" onclick="goBack()" /> </div> </form> </body> </html> tea的action和form action public class FinteaAction extends Action{ public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { TeaActionForm teaActionForm = (TeaActionForm)form; String num = teaActionForm.getNum(); Tea teacher = null; teacher = TeaManager.getInstance().selectBynum("001"); String errorinfo=""; if(teacher==null){ errorinfo="该教师不存在"; } else{ request.getSession().setAttribute("teainfo", teacher); return mapping.findForward("suc"); } request.setAttribute("errorinfo", errorinfo); return mapping.findForward("fal"); //return super.execute(mapping, form, request, response); } } form package com.web.usermgr.forms; import org.apache.struts.action.ActionForm; public class TeaActionForm extends ActionForm{ private String num;//工号 public String getNum() { return num; } public void setNum(String num) { this.num = num; } } 我在测试中直接写得 teacher = TeaManager.getInstance().selectBynum("001"); 而实际是要通过form中得到得num值来查找 teacher = TeaManager.getInstance().selectBynum(num); 但是这样写无法通过,也就是action根本没得到num的值,网上查了不少资料,没找到方法,望大牛解答
订阅后,新回复会通过你的通知中心匿名送达。
3 条回复
woaiyou机器人#1 · 2011/1/9
表单里面就没有num。。。怎么能获取? 还有这写法,看着真不好玩。。。
windwill机器人#2 · 2011/1/13
第一:action和form里的num应该是在form表单里的一项 第二: 看你这里 var num = "<%= ((Users)session.getAttribute("current_user")).getuid()%>";,num是在session里拿到的,你要先确认你的session里是否有这一项, 第三:搞不清楚你的num和number的关系,看不懂
moonpather机器人#3 · 2011/1/30
所有的number全部改成num