生活随笔
收集整理的這篇文章主要介紹了
浅谈JSP表单中的form传值
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
不同JSP頁面之間、不同action之間,以及JSP中form與其對應的action之間,JSP中form與其不對應的action之間如何傳值。本文將介紹JSP表單中的form傳值。
JSP表單中的form傳值
頁面間鏈接和數據傳遞的三種方式
(1)通過JSP表單form將數據提交到下一個頁面;
(2)通過JSP表單鏈接將數據提交到下一個頁面;
(3)通過JSP表單Session將數據提交到后續頁面,session是一次會話只要瀏覽器不關閉就不會關閉會話,一般默認保存30分鐘可以根據自己的需要更改 。
例:
01.html ?<html>?<head>?<title>利用表單傳遞數據</title>?</head>?<body>?<h3>利用表單傳遞數據</h3>?<form?name="form1"?method="post"?action="02.jsp">?<p>你的姓名: ??????<input?type="text"?name="name">?</p>?<p>你的愛好: ??????<input?type="text"?name="hobby">?</p>?<p>你所從事的行業: ??????<select?name="work">????????????<option></option>??????????<option?value="學生">學生</option>?????????<option?value="IT業">IT業</option>?????????<option?value="商業">商業</option>?????????<option?value="制造業">制造業</option>?????????<option?value="服務業">服務業</option>??????</select>?</p>?<p>??????<input?type="Submit"?value="提交">??????<input?type="Reset"?value="重置">?</p>?</form>?</body>?</html>?02.jsp ?<html>?<head>?<title>從表單中獲取數據</title>?</head>?<%@?page?contentType="text/html;charset=GB2312"%>?<body>?<h3>從表單中獲取數據</h3>?<p>?<% ????//從表單中獲取數據 ????String?name=?request.getParameter("name"); ????String?hobby=request.getParameter("hobby"); ????String?work=?request.getParameter("work"); ????//驗證"名字(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對象中,讓后續頁面(下個頁面、下下個頁面、……)引用 ???????session.setAttribute("name",name); ????} ?%>?<br>??<a?href="03.jsp?hobby=<%=hobby%>&work=<%=work%>">提交</a>?</p>?<hr>?<p><font?size="2">*將"名字(name)"保存到session對象中,讓后續頁面(下個頁面、下下個頁面、……)引用</font></p>?<p><font?size="2">*將"愛好(hobby)"和"工作(work)"以鏈接的形式遞給下個頁面</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>確認提交這些信息嗎?</h3></p>?<input?type="Button"?name="Submit"?value="確認"?onClick="javascript:submit1()">?<input?type="Button"?name="Edit"?value="修改"?onClick="javascript:edit1()">?</form>?<hr>?<p><font?size="2">*將"愛好(hobby)"和"工作(work)"保存在session對象中,讓后續頁面(下個頁面、下下個頁面、……)引用</font></p>?<p><font?size="2">*由于"名字(name)"在上個頁面中已經保存在session對象中了,這里沒必要再次保存</font></p>?</body>?</html>?4.jsp ?<html>?<head>?<title>從sessoin對象中獲取數據</title>?</head>?<%@?page?contentType="text/html;charset=GB2312"?%>?<body>?<h3>從sessoin對象中獲取數據</h3>?<% ????//從sessoin對象中獲取數據 ????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>,在業余時間喜歡<font?color="#0000FF"><%=hobby%></font>。 ?</p>?</body>?</html>?1.jsp ?<html>?<head>?<title>利用表單傳遞數據</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>利用表單傳遞數據</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>你所從事的行業: ??????<select?name="work">???????????<%if(work.equals("學生")){%>?????????<option?value="學生"?selected>學生</option>?????????<option?value="IT業">IT業</option>?????????<option?value="商業">商業</option>?????????<option?value="制造業">制造業</option>?????????<option?value="服務業">服務業</option>???????????<%}else?if(work.equals("IT業")){%>?????????<option?value="學生">學生</option>?????????<option?value="IT業"?selected>IT業</option>?????????<option?value="商業">商業</option>?????????<option?value="制造業">制造業</option>?????????<option?value="服務業">服務業</option>???????????<%}else?if(work.equals("商業")){%>?????????<option?value="學生">學生</option>?????????<option?value="IT業">IT業</option>?????????<option?value="商業"?selected>商業</option>?????????<option?value="制造業">制造業</option>?????????<option?value="服務業">服務業</option>???????????<%}else?if(work.equals("制造業")){%>?????????<option?value="學生">學生</option>?????????<option?value="IT業">IT業</option>?????????<option?value="商業">商業</option>????????<option?value="制造業"?selected>制造業</option>?????????<option?value="服務業">服務業</option>???????????????<%}else?if(work.equals("服務業")){%>?????????<option?value="學生">學生</option>????????<option?value="IT業">IT業</option>?????????<option?value="商業">商業</option>?????????<option?value="制造業">制造業</option>?????????<option?value="服務業"?selected>服務業</option>???????????????<%}%>??????</select>?</p>?<p>??????<input?type="Submit"?value="提交">??????<input?type="Reset"?value="重置">?</p>?</form>?</body>?</html>?
總結
以上是生活随笔為你收集整理的浅谈JSP表单中的form传值的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。