jsp表单form传值

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

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="确认" 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>

 

 

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>

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值