JSP表单中的form传值

不同JSP页面之间、不同action之间,以及JSP中form与其对应的action之间,JSP中form与其不对应的action之间如何传值。本文将介绍JSP表单中的form传值。

页面间链接和数据传递的三种方式

(1)通过JSP表单form将数据提交到下一个页面;

(2)通过JSP表单链接将数据提交到下一个页面;

(3)通过JSP表单Session将数据提交到后续页面,session是一次会话只要浏览器不关闭就不会关闭会话,一般默认保存30分钟可以根据自己的需要更改 。

例:

  1. 01.html
  2. <html>
  3. <head>
  4. <title>利用表单传递数据</title>
  5. </head>
  6. <body>
  7. <h3>利用表单传递数据</h3>
  8. <form name=“form1” method=“post” action=“02.jsp”>
  9. <p>你的姓名:
  10.      <input type=“text” name=“name”>
  11. </p>
  12. <p>你的爱好:
  13.      <input type=“text” name=“hobby”>
  14. </p>
  15. <p>你所从事的行业:
  16.      <select name=“work”>
  17.            <option></option> <!–默认为空,从下拉菜单中选择–>
  18.         <option value=“学生”>学生</option>
  19.         <option value=“IT业”>IT业</option>
  20.         <option value=“商业”>商业</option>
  21.         <option value=“制造业”>制造业</option>
  22.         <option value=“服务业”>服务业</option>
  23.      </select>
  24. </p>
  25. <p>
  26.      <input type=“Submit” value=“提交”>
  27.      <input type=“Reset” value=“重置”>
  28. </p>
  29. </form>
  30. </body>
  31. </html>
  32. 02.jsp
  33. <html>
  34. <head>
  35. <title>从表单中获取数据</title>
  36. </head>
  37. <%@ page contentType=“text/html;charset=GB2312”%>
  38. <body>
  39. <h3>从表单中获取数据</h3>
  40. <p>
  41. <%
  42.    //从表单中获取数据
  43.    String namerequest.getParameter(“name”);
  44.    String hobby=request.getParameter(“hobby”);
  45.    String workrequest.getParameter(“work”);
  46.    //验证”名字(name)”的长度是否符合要求
  47.    if(name.length()<3||name.length()>8)
  48.       out.println(“你输入的名字长度不符合要求”);
  49.    else
  50.    {
  51.       out.println(“你的姓名是:”+name+”<br>“);
  52.         out.println(“你的爱好是:”+hobby+”<br>“);
  53.       out.println(“你所从事的工作是:”+work+”<br>“);
  54.       //将”名字(name)”保存到session对象中,让后续页面(下个页面、下下个页面、……)引用
  55.       session.setAttribute(“name”,name);
  56.    }
  57. %>
  58. <br>
  59. <!–将”爱好(hobby)”和”工作(work)”以链接的形式传递给下个页面–>
  60. <a href=“03.jsp?hobby=<%=hobby%>&work=<%=work%>”>提交</a>
  61. </p>
  62. <hr>
  63. <p><font size=“2”>*将”名字(name)”保存到session对象中,让后续页面(下个页面、下下个页面、……)引用</font></p>
  64. <p><font size=“2”>*将”爱好(hobby)”和”工作(work)”以链接的形式递给下个页面</font></p>
  65. </body>
  66. </html>
  67. 3.jsp
  68. <html>
  69. <head>
  70. <title>从session对象中获取”名字(name)”的值;从链接中获取”爱好(hobby)”和”工作(work)”</title>
  71. </head>
  72. <%@ page contentType=“text/html;charset=GB2312”%>
  73. <SCRIPT language=“JavaScript”>
  74.      function submit1()
  75.         {
  76.          document.forms[“form1”].action=“04.jsp”;
  77.         document.form1.submit();
  78.         }
  79.         function edit1()
  80.         {
  81.           document.forms[“form1”].action=“01.jsp”;
  82.        document.form1.submit();
  83.         }
  84. </SCRIPT>
  85. <%@ page contentType=“text/html;charset=GB2312” %>
  86. <body>
  87. <h3>从session对象中获取”名字(name)”的值;从链接中获取”爱好(hobby)”和”工作(work)”</h3>
  88. <%
  89.    String name=(String)session.getAttribute(“name”);
  90.    String hobby=request.getParameter(“hobby”);
  91.    String workrequest.getParameter(“work”);
  92.    out.println(“你的姓名是:”+name+”<br>“);
  93.    out.println(“你的爱好是:”+hobby+”<br>“);
  94.    out.println(“你所从事的工作是:”+work+”<br>“);
  95.    //将”爱好(hobby)”和”工作(work)”保存在session对象中
  96.    session.setAttribute(“hobby”,hobby);
  97.   session.setAttribute(“work”,work);
  98. %>
  99. <form name=“form1” method=“post”>
  100. <input type=“hidden” name=“name” value=“<%=name%>”>
  101. <input type=“hidden” name=“hobby” value=“<%=hobby%>”>
  102. <input type=“hidden” name=“work” value=“<%=work%>”>
  103. <p><h3>确认提交这些信息吗?</h3></p>
  104. <input type=“Button” name=“Submit” value=“确认” onClick=“javascript:submit1()”>
  105. <input type=“Button” name=“Edit” value=“修改” onClick=“javascript:edit1()”>
  106. </form>
  107. <hr>
  108. <p><font size=“2”>*将”爱好(hobby)”和”工作(work)”保存在session对象中,让后续页面(下个页面、下下个页面、……)引用</font></p>
  109. <p><font size=“2”>*由于”名字(name)”在上个页面中已经保存在session对象中了,这里没必要再次保存</font></p>
  110. </body>
  111. </html>
  112. 4.jsp
  113. <html>
  114. <head>
  115. <title>从sessoin对象中获取数据</title>
  116. </head>
  117. <%@ page contentType=“text/html;charset=GB2312” %>
  118. <body>
  119. <h3>从sessoin对象中获取数据</h3>
  120. <%
  121.    //从sessoin对象中获取数据
  122.    String name=(String)session.getAttribute(“name”);
  123.    String work=(String)session.getAttribute(“work”);
  124.    String hobby=(String)session.getAttribute(“hobby”);
  125. %>
  126. <p>
  127. <font color=“#0000FF”><%=name%></font>,你好!你所从事的工作是<font color=“#0000FF”><%=work%></font>,在业余时间喜欢<font color=“#0000FF”><%=hobby%></font>
  128. </p>
  129. </body>
  130. </html>
  131. 1.jsp
  132. <html>
  133. <head>
  134. <title>利用表单传递数据</title>
  135. </head>
  136. <%@ page contentType=“text/html;charset=GB2312” %>
  137. <%
  138.    String name=request.getParameter(“name”);
  139.    String hobby=request.getParameter(“hobby”);
  140.    String work=new String(request.getParameter(“work”).getBytes(“ISO8859_1″),”GBK”);
  141. %>
  142. <body>
  143. <h3>利用表单传递数据</h3>
  144. <form name=“form1” method=“post” action=“02.jsp”>
  145. <p>你的姓名:
  146.      <input type=“text” name=“name” value=“<%=name%>”>
  147. </p>
  148. <p>你的爱好:
  149.      <input type=“text” name=“hobby” value=“<%=hobby%>”>
  150. </p>
  151. <p>你所从事的行业:
  152.      <select name=“work”>
  153.           <%if(work.equals(“学生”)){%>
  154.         <option value=“学生” selected>学生</option>
  155.         <option value=“IT业”>IT业</option>
  156.         <option value=“商业”>商业</option>
  157.         <option value=“制造业”>制造业</option>
  158.         <option value=“服务业”>服务业</option>
  159.           <%}else if(work.equals(“IT业”)){%>
  160.         <option value=“学生”>学生</option>
  161.         <option value=“IT业” selected>IT业</option>
  162.         <option value=“商业”>商业</option>
  163.         <option value=“制造业”>制造业</option>
  164.         <option value=“服务业”>服务业</option>
  165.           <%}else if(work.equals(“商业”)){%>
  166.         <option value=“学生”>学生</option>
  167.         <option value=“IT业”>IT业</option>
  168.         <option value=“商业” selected>商业</option>
  169.         <option value=“制造业”>制造业</option>
  170.         <option value=“服务业”>服务业</option>
  171.           <%}else if(work.equals(“制造业”)){%>
  172.         <option value=“学生”>学生</option>
  173.         <option value=“IT业”>IT业</option>
  174.         <option value=“商业”>商业</option>
  175.        <option value=“制造业” selected>制造业</option>
  176.         <option value=“服务业”>服务业</option>
  177.               <%}else if(work.equals(“服务业”)){%>
  178.         <option value=“学生”>学生</option>
  179.        <option value=“IT业”>IT业</option>
  180.         <option value=“商业”>商业</option>
  181.         <option value=“制造业”>制造业</option>
  182.         <option value=“服务业” selected>服务业</option>
  183.               <%}%>
  184.      </select>
  185. </p>
  186. <p>
  187.      <input type=“Submit” value=“提交”>
  188.      <input type=“Reset” value=“重置”>
  189. </p>
  190. </form>
  191. </body>
  192. </html>

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

6 − 2 =