六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 121|回复: 0

【转】jsp表单form传值

[复制链接]

升级  28%

82

主题

82

主题

82

主题

举人

Rank: 3Rank: 3

积分
284
 楼主| 发表于 2013-2-7 19:37:42 | 显示全部楼层 |阅读模式
页面间链接和数据传递的三种方式
 (1)通过form将数据提交到下一个页面;
 (2)通过链接将数据提交到下一个页面;
 (3)通过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>
<!--将"爱好(hobby)"和"工作(work)"以链接的形式传递给下个页面-->
<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>
 
03.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="确认" >
 <input type="Button" name="Edit" value="修改" >
</form>
<hr>
<p><font size="2">*将"爱好(hobby)"和"工作(work)"保存在session对象中,让后续页面(下个页面、下下个页面、……)引用</font></p>
<p><font size="2">*由于"名字(name)"在上个页面中已经保存在session对象中了,这里没必要再次保存</font></p>
</body>
</html>
 
04.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>
 
01.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>
 
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/anmei2010/archive/2009/04/30/4140216.aspx
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表