浅谈JSP表单中的form传值
JSP表单中的form传值
页面间链接和数据传递的三种方式
(1)通过JSP表单form将数据提交到下一个页面;
(2)通过JSP表单链接将数据提交到下一个页面;
(3)通过JSP表单Session将数据提交到后续页面,session是一次会话只要浏览器不关闭就不会关闭会话,一般默认保存30分钟可以根据自己的需要更改 。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <title>Admin Console</title> 5 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 6 <link rel="stylesheet" type="text/css" href="/styles/console.css" /> 7 <script type="text/javascript" src="/scripts/jquery.js"></script> 8 9 10 <meta name="menu" content="home" /> 11 12 </head> 13 14 15 <body> 16 <div id="page"> 17 <div id="header"> 18 19 20 21 22 23 24 25 26 27 <div id="branding"> 28 <h1><a href="/">Android Push Notification Admin Console</a></h1> 29 </div> 30 31 </div> 32 <div id="content"> 33 <ul id="tabmenu"> 34 <li><a href="/index.do" 35 class="current">Home</a></li> 36 <li><a href="/user.do" 37 class="">Users</a></li> 38 <li><a href="/session.do" 39 class="">Sessions</a></li> 40 <li><a href="/notification.do" 41 class="">Notifications</a></li> 42 </ul> 43 <div id="tabcontent"> 44 45 46 <h1>Welcome!</h1> 47 48 <div style="text-align:center"><img src="/images/androidpn.png" border="0" /></div> 49 50 51 </div> 52 </div> 53 <div id="footer"> 54 55 56 57 58 59 60 61 62 63 <div id="copyright">© 2010 Androidpn (androidpn-server v0.5.0)</div> 64 65 </div> 66 </div> 67 </body> 68 </html> 69 <html> 70 <head> 71 <title>利用表单传递数据</title> 72 </head> 73 <body> 74 <h3>利用表单传递数据</h3> 75 <form name="form1" method="post" action="02.jsp"> 76 <p>你的姓名: 77 <input type="text" name="name"> 78 </p> 79 <p>你的爱好: 80 <input type="text" name="hobby"> 81 </p> 82 <p>你所从事的行业: 83 <select name="work"> 84 <option></option> <!--默认为空,从下拉菜单中选择--> 85 <option value="学生">学生</option> 86 <option value="IT业">IT业</option> 87 <option value="商业">商业</option> 88 <option value="制造业">制造业</option> 89 <option value="服务业">服务业</option> 90 </select> 91 </p> 92 <p> 93 <input type="Submit" value="提交"> 94 <input type="Reset" value="重置"> 95 </p> 96 </form> 97 </body> 98 </html> 99 02.jsp 100 <html> 101 <head> 102 <title>从表单中获取数据</title> 103 </head> 104 <%@ page contentType="text/html;charset=GB2312"%> 105 <body> 106 <h3>从表单中获取数据</h3> 107 <p> 108 <% 109 //从表单中获取数据 110 String name= request.getParameter("name"); 111 String hobby=request.getParameter("hobby"); 112 String work= request.getParameter("work"); 113 //验证"名字(name)"的长度是否符合要求 114 if(name.length()<3||name.length()>8) 115 out.println("你输入的名字长度不符合要求"); 116 else 117 { 118 out.println("你的姓名是:"+name+"<br>"); 119 out.println("你的爱好是:"+hobby+"<br>"); 120 out.println("你所从事的工作是:"+work+"<br>"); 121 //将"名字(name)"保存到session对象中,让后续页面(下个页面、下下个页面、……)引用 122 session.setAttribute("name",name); 123 } 124 %> 125 <br> 126 <!--将"爱好(hobby)"和"工作(work)"以链接的形式传递给下个页面--> 127 <a href="03.jsp?hobby=<%=hobby%>&work=<%=work%>">提交</a> 128 </p> 129 <hr> 130 <p><font size="2">*将"名字(name)"保存到session对象中,让后续页面(下个页面、下下个页面、……)引用</font></p> 131 <p><font size="2">*将"爱好(hobby)"和"工作(work)"以链接的形式递给下个页面</font></p> 132 </body> 133 </html> 134 3.jsp 135 <html> 136 <head> 137 <title>从session对象中获取"名字(name)"的值;从链接中获取"爱好(hobby)"和"工作(work)"</title> 138 </head> 139 <%@ page contentType="text/html;charset=GB2312"%> 140 <SCRIPT language="JavaScript"> 141 function submit1() 142 { 143 document.forms["form1"].action="04.jsp"; 144 document.form1.submit(); 145 } 146 147 148 function edit1() 149 { 150 document.forms["form1"].action="01.jsp"; 151 document.form1.submit(); 152 } 153 </SCRIPT> 154 <%@ page contentType="text/html;charset=GB2312" %> 155 <body> 156 <h3>从session对象中获取"名字(name)"的值;从链接中获取"爱好(hobby)"和"工作(work)"</h3> 157 <% 158 String name=(String)session.getAttribute("name"); 159 String hobby=request.getParameter("hobby"); 160 String work= request.getParameter("work"); 161 out.println("你的姓名是:"+name+"<br>"); 162 out.println("你的爱好是:"+hobby+"<br>"); 163 out.println("你所从事的工作是:"+work+"<br>"); 164 //将"爱好(hobby)"和"工作(work)"保存在session对象中 165 session.setAttribute("hobby",hobby); 166 session.setAttribute("work",work); 167 %> 168 <form name="form1" method="post"> 169 <input type="hidden" name="name" value="<%=name%>"> 170 <input type="hidden" name="hobby" value="<%=hobby%>"> 171 <input type="hidden" name="work" value="<%=work%>"> 172 <p><h3>确认提交这些信息吗?</h3></p> 173 <input type="Button" name="Submit" value="确认" onClick="javascript:submit1()"> 174 <input type="Button" name="Edit" value="修改" onClick="javascript:edit1()"> 175 </form> 176 <hr> 177 <p><font size="2">*将"爱好(hobby)"和"工作(work)"保存在session对象中,让后续页面(下个页面、下下个页面、……)引用</font></p> 178 <p><font size="2">*由于"名字(name)"在上个页面中已经保存在session对象中了,这里没必要再次保存</font></p> 179 </body> 180 </html> 181 4.jsp 182 <html> 183 <head> 184 <title>从sessoin对象中获取数据</title> 185 </head> 186 <%@ page contentType="text/html;charset=GB2312" %> 187 <body> 188 <h3>从sessoin对象中获取数据</h3> 189 <% 190 //从sessoin对象中获取数据 191 String name=(String)session.getAttribute("name"); 192 String work=(String)session.getAttribute("work"); 193 String hobby=(String)session.getAttribute("hobby"); 194 %> 195 <p> 196 <font color="#0000FF"><%=name%></font>,你好!你所从事的工作是<font color="#0000FF"><%=work%></font>,在业余时间喜欢<font color="#0000FF"><%=hobby%></font>。 197 </p> 198 </body> 199 </html> 200 1.jsp 201 <html> 202 <head> 203 <title>利用表单传递数据</title> 204 </head> 205 <%@ page contentType="text/html;charset=GB2312" %> 206 <% 207 String name=request.getParameter("name"); 208 String hobby=request.getParameter("hobby"); 209 String work=new String(request.getParameter("work").getBytes("ISO8859_1"),"GBK"); 210 %> 211 <body> 212 <h3>利用表单传递数据</h3> 213 <form name="form1" method="post" action="02.jsp"> 214 <p>你的姓名: 215 <input type="text" name="name" value="<%=name%>"> 216 </p> 217 <p>你的爱好: 218 <input type="text" name="hobby" value="<%=hobby%>"> 219 </p> 220 <p>你所从事的行业: 221 <select name="work"> 222 <%if(work.equals("学生")){%> 223 <option value="学生" selected>学生</option> 224 <option value="IT业">IT业</option> 225 <option value="商业">商业</option> 226 <option value="制造业">制造业</option> 227 <option value="服务业">服务业</option> 228 <%}else if(work.equals("IT业")){%> 229 <option value="学生">学生</option> 230 <option value="IT业" selected>IT业</option> 231 <option value="商业">商业</option> 232 <option value="制造业">制造业</option> 233 <option value="服务业">服务业</option> 234 <%}else if(work.equals("商业")){%> 235 <option value="学生">学生</option> 236 <option value="IT业">IT业</option> 237 <option value="商业" selected>商业</option> 238 <option value="制造业">制造业</option> 239 <option value="服务业">服务业</option> 240 <%}else if(work.equals("制造业")){%> 241 <option value="学生">学生</option> 242 <option value="IT业">IT业</option> 243 <option value="商业">商业</option> 244 <option value="制造业" selected>制造业</option> 245 <option value="服务业">服务业</option> 246 <%}else if(work.equals("服务业")){%> 247 <option value="学生">学生</option> 248 <option value="IT业">IT业</option> 249 <option value="商业">商业</option> 250 <option value="制造业">制造业</option> 251 <option value="服务业" selected>服务业</option> 252 <%}%> 253 </select> 254 </p> 255 <p> 256 <input type="Submit" value="提交"> 257 <input type="Reset" value="重置"> 258 </p> 259 </form> 260 </body> 261 </html>