淺談JSP表單中的form傳值
作者:三七進(jìn)一
不同JSP頁面之間、不同action之間,以及JSP中form與其對應(yīng)的action之間,JSP中form與其不對應(yīng)的action之間如何傳值。本文將介紹JSP表單中的form傳值。
JSP表單中的form傳值
頁面間鏈接和數(shù)據(jù)傳遞的三種方式
(1)通過JSP表單form將數(shù)據(jù)提交到下一個(gè)頁面;
(2)通過JSP表單鏈接將數(shù)據(jù)提交到下一個(gè)頁面;
(3)通過JSP表單Session將數(shù)據(jù)提交到后續(xù)頁面,session是一次會(huì)話只要瀏覽器不關(guān)閉就不會(huì)關(guān)閉會(huì)話,一般默認(rèn)保存30分鐘可以根據(jù)自己的需要更改 。
例:
- 01.html
- <html>
- <head>
- <title>利用表單傳遞數(shù)據(jù)</title>
- </head>
- <body>
- <h3>利用表單傳遞數(shù)據(jù)</h3>
- <form name="form1" method="post" action="02.jsp">
- <p>你的姓名:
- <input type="text" name="name">
- </p>
- <p>你的愛好:
- <input type="text" name="hobby">
- </p>
- <p>你所從事的行業(yè):
- <select name="work">
- <option></option> <!--默認(rèn)為空,從下拉菜單中選擇-->
- <option value="學(xué)生">學(xué)生</option>
- <option value="IT業(yè)">IT業(yè)</option>
- <option value="商業(yè)">商業(yè)</option>
- <option value="制造業(yè)">制造業(yè)</option>
- <option value="服務(wù)業(yè)">服務(wù)業(yè)</option>
- </select>
- </p>
- <p>
- <input type="Submit" value="提交">
- <input type="Reset" value="重置">
- </p>
- </form>
- </body>
- </html>
- 02.jsp
- <html>
- <head>
- <title>從表單中獲取數(shù)據(jù)</title>
- </head>
- <%@ page contentType="text/html;charset=GB2312"%>
- <body>
- <h3>從表單中獲取數(shù)據(jù)</h3>
- <p>
- <%
- //從表單中獲取數(shù)據(jù)
- String name= request.getParameter("name");
- String hobby=request.getParameter("hobby");
- String work= request.getParameter("work");
- //驗(yàn)證"名字(name)"的長度是否符合要求
- if(name.length()<3||name.length()>8)
- out.println("你輸入的名字長度不符合要求");
- else
- {
- out.println("你的姓名是:"+name+"<br>");
- out.println("你的愛好是:"+hobby+"<br>");
- out.println("你所從事的工作是:"+work+"<br>");
- //將"名字(name)"保存到session對象中,讓后續(xù)頁面(下個(gè)頁面、下下個(gè)頁面、……)引用
- session.setAttribute("name",name);
- }
- %>
- <br>
- <!--將"愛好(hobby)"和"工作(work)"以鏈接的形式傳遞給下個(gè)頁面-->
- <a href="03.jsp?hobby=<%=hobby%>&work=<%=work%>">提交</a>
- </p>
- <hr>
- <p><font size="2">*將"名字(name)"保存到session對象中,讓后續(xù)頁面(下個(gè)頁面、下下個(gè)頁面、……)引用</font></p>
- <p><font size="2">*將"愛好(hobby)"和"工作(work)"以鏈接的形式遞給下個(gè)頁面</font></p>
- </body>
- </html>
- 3.jsp
- <html>
- <head>
- <title>從session對象中獲取"名字(name)"的值;從鏈接中獲取"愛好(hobby)"和"工作(work)"</title>
- </head>
- <%@ page contentType="text/html;charset=GB2312"%>
- <SCRIPT language="JavaScript">
- function submit1()
- {
- document.forms["form1"].action="04.jsp";
- document.form1.submit();
- }
- function edit1()
- {
- document.forms["form1"].action="01.jsp";
- document.form1.submit();
- }
- </SCRIPT>
- <%@ page contentType="text/html;charset=GB2312" %>
- <body>
- <h3>從session對象中獲取"名字(name)"的值;從鏈接中獲取"愛好(hobby)"和"工作(work)"</h3>
- <%
- String name=(String)session.getAttribute("name");
- String hobby=request.getParameter("hobby");
- String work= request.getParameter("work");
- out.println("你的姓名是:"+name+"<br>");
- out.println("你的愛好是:"+hobby+"<br>");
- out.println("你所從事的工作是:"+work+"<br>");
- //將"愛好(hobby)"和"工作(work)"保存在session對象中
- session.setAttribute("hobby",hobby);
- session.setAttribute("work",work);
- %>
- <form name="form1" method="post">
- <input type="hidden" name="name" value="<%=name%>">
- <input type="hidden" name="hobby" value="<%=hobby%>">
- <input type="hidden" name="work" value="<%=work%>">
- <p><h3>確認(rèn)提交這些信息嗎?</h3></p>
- <input type="Button" name="Submit" value="確認(rèn)" onClick="javascript:submit1()">
- <input type="Button" name="Edit" value="修改" onClick="javascript:edit1()">
- </form>
- <hr>
- <p><font size="2">*將"愛好(hobby)"和"工作(work)"保存在session對象中,讓后續(xù)頁面(下個(gè)頁面、下下個(gè)頁面、……)引用</font></p>
- <p><font size="2">*由于"名字(name)"在上個(gè)頁面中已經(jīng)保存在session對象中了,這里沒必要再次保存</font></p>
- </body>
- </html>
- 4.jsp
- <html>
- <head>
- <title>從sessoin對象中獲取數(shù)據(jù)</title>
- </head>
- <%@ page contentType="text/html;charset=GB2312" %>
- <body>
- <h3>從sessoin對象中獲取數(shù)據(jù)</h3>
- <%
- //從sessoin對象中獲取數(shù)據(jù)
- String name=(String)session.getAttribute("name");
- String work=(String)session.getAttribute("work");
- String hobby=(String)session.getAttribute("hobby");
- %>
- <p>
- <font color="#0000FF"><%=name%></font>,你好!你所從事的工作是<font color="#0000FF"><%=work%></font>,在業(yè)余時(shí)間喜歡<font color="#0000FF"><%=hobby%></font>。
- </p>
- </body>
- </html>
- 1.jsp
- <html>
- <head>
- <title>利用表單傳遞數(shù)據(jù)</title>
- </head>
- <%@ page contentType="text/html;charset=GB2312" %>
- <%
- String name=request.getParameter("name");
- String hobby=request.getParameter("hobby");
- String work=new String(request.getParameter("work").getBytes("ISO8859_1"),"GBK");
- %>
- <body>
- <h3>利用表單傳遞數(shù)據(jù)</h3>
- <form name="form1" method="post" action="02.jsp">
- <p>你的姓名:
- <input type="text" name="name" value="<%=name%>">
- </p>
- <p>你的愛好:
- <input type="text" name="hobby" value="<%=hobby%>">
- </p>
- <p>你所從事的行業(yè):
- <select name="work">
- <%if(work.equals("學(xué)生")){%>
- <option value="學(xué)生" selected>學(xué)生</option>
- <option value="IT業(yè)">IT業(yè)</option>
- <option value="商業(yè)">商業(yè)</option>
- <option value="制造業(yè)">制造業(yè)</option>
- <option value="服務(wù)業(yè)">服務(wù)業(yè)</option>
- <%}else if(work.equals("IT業(yè)")){%>
- <option value="學(xué)生">學(xué)生</option>
- <option value="IT業(yè)" selected>IT業(yè)</option>
- <option value="商業(yè)">商業(yè)</option>
- <option value="制造業(yè)">制造業(yè)</option>
- <option value="服務(wù)業(yè)">服務(wù)業(yè)</option>
- <%}else if(work.equals("商業(yè)")){%>
- <option value="學(xué)生">學(xué)生</option>
- <option value="IT業(yè)">IT業(yè)</option>
- <option value="商業(yè)" selected>商業(yè)</option>
- <option value="制造業(yè)">制造業(yè)</option>
- <option value="服務(wù)業(yè)">服務(wù)業(yè)</option>
- <%}else if(work.equals("制造業(yè)")){%>
- <option value="學(xué)生">學(xué)生</option>
- <option value="IT業(yè)">IT業(yè)</option>
- <option value="商業(yè)">商業(yè)</option>
- <option value="制造業(yè)" selected>制造業(yè)</option>
- <option value="服務(wù)業(yè)">服務(wù)業(yè)</option>
- <%}else if(work.equals("服務(wù)業(yè)")){%>
- <option value="學(xué)生">學(xué)生</option>
- <option value="IT業(yè)">IT業(yè)</option>
- <option value="商業(yè)">商業(yè)</option>
- <option value="制造業(yè)">制造業(yè)</option>
- <option value="服務(wù)業(yè)" selected>服務(wù)業(yè)</option>
- <%}%>
- </select>
- </p>
- <p>
- <input type="Submit" value="提交">
- <input type="Reset" value="重置">
- </p>
- </form>
- </body>
- </html>
【編輯推薦】
責(zé)任編輯:彭凡
來源:
百度空間