浅谈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>
- <!--将"爱好(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>
- 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传值相关推荐
- html转jsp文件乱码问题,浅谈jsp文件和HTML互相引入的乱码问题
浅谈jsp文件和HTML互相引入的乱码问题 1.在jsp中用include指令引入HTML文件时遇到的问题: jsp.html都可以正确的显示,当jsp引入html时访问jsp页面HTML出现乱码,j ...
- 浅谈MySQL表类型
小小子的文章写的不错哦. 转载:http://www.xiaoxiaozi.com/2009/07/14/1171/ 浅谈MySQL表类型 MySQL为我们提供了很多表类型供选择,有MyISAM.IS ...
- 洛谷P1156 垃圾陷阱 题解浅谈刷表法与填表法
洛谷P1156 垃圾陷阱 题解&浅谈刷表法与填表法 填表法 :就是一般的动态规划,当前点的状态,可以直接用状态方程,根据之前点的状态推导出来. 刷表法:由当前点的状态,更新其他点的状态.需要注 ...
- serverlet 区别_浅谈JSP serverlet的区别与联系
jsp是html包含java servlet是java包含html jsp请求到tomcat---tomcat封装了jsp到servlet实现. 所以jsp请求时候,会自动创建session 而不用在 ...
- 浅谈GOT表与PLT表
文章目录 浅谈GOT表与PLT表 1. 实例 2. PLT表 3. 动态解析 4. 总结 浅谈GOT表与PLT表 我们都知道动态链接库是我们程序开发中比较基础的手段,我们将公共的函数封装在一个so库中 ...
- JSP表单中的隐藏域
给表单中的input标签设置type为hidden,即为隐藏域 方便在不显示ID属性值的情况下,为下一JSP页面操作传递ID数值. <input type="hidden" ...
- 浅谈jsp的7个动作
有好多话,想说确无从说起.有时候,触碰着自己的痛点,我总会避开他不去谈论.例如我现在,就是这样的.本来想着说点自己迫切要说的,但是还是扯到了别的地方---笔者买了一个平板,外加一个256gTF卡.虽然 ...
- mysql表的类型_浅谈MySQL表类型
MySQL为我们提供了很多表类型供选择,有MyISAM.ISAM.HEAP.BerkeleyDB.InnoDB,MERGE表类型,萝卜白菜各有所爱是不假,可是真正选择何种表类型还是要看业务需要啊,每一 ...
- 浅谈Mysql 表设计规范
本文首先探讨下数据库设计的三大范式,因为范式只是给出了数据库设计的原则,并没有告诉我们实际操作中应该怎样操作,应该注意什么,所以我们还会谈下实际工作中需要注意的具体操作问题. 三大范式 首先放出三大范 ...
最新文章
- 滚动时域控制 matlab,在 Simulink 中设计神经网络预测控制器
- python语言中文社区-Python 之父谈 Python-Go语言中文社区
- 单步调试时遇到cout和cin会自动跳到ostream文件中的解决方案
- Sharepoint Ribbon Loaction
- 名片识别信息分类python_python体验名片识别OCR
- mysql查看当前连接数据
- ActiveMQ学习笔记(1)----初识ActiveMQ
- python爬虫模拟登录学校教务系统(青果教务系统)并查询个人成绩
- 98岁国学大师自曝只喜欢18岁的年轻美女
- ids for this class must be manually assigned before calling save()报错解决方法
- Linux工具学习之【gcc/g++】
- 汇编程序语言 输入数字n和n个数字并对n个数字排序(带注释)
- DOA定位算法源码程序
- 葡萄牙晋级世界杯决赛
- fluent python epub_Fluent Python, LineItem 进化路线
- Carsim软件使用技巧
- 五、python-地图可视化篇(黑马程序猿-python学习记录)
- Java:图书管理系统
- java企业官网源码 自适应响应式 freemarker 静态引擎 SSM 框架
- 奇瑞新能源又一款新车上市 奇瑞无界Pro炫酷来袭
热门文章
- 优化自定义函数_Pandas常见的性能优化方法
- oracle agile 性能,Oracle Agile PLM安全漏洞(CVE-2016-3554)
- 485串口光纤转换器产品介绍
- 节点式光端机与点对点式光端机的区别
- 【渝粤教育】国家开放大学2019年春季 1171科学与技术 参考试题
- 【渝粤题库】陕西师范大学200131中国古代文论 作业(专升本)
- 【渝粤题库】广东开放大学 物业财税管理基础 形成性考核
- js 和java有关系吗,javascript和JAVA有什么关系
- mysql数据库全备_MySQL innobackupex全备是指什么
- php中数组生成下拉选项,php利用数组填充下拉列表框