`
anna_zr
  • 浏览: 200592 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

jsp处理表单--页面跳转

阅读更多
原文地址:http://www.cn-java.com/www1/?action-viewnews-itemid-3819


1:超连接跳转
     我们在超连接的时候,常常连接到一个jsp或者Action,比如:

XXX

     这样做会有一个问题:在test.jsp中,除你传递的param1和param2参数外,你用request.getParamter()取任何原来页面的表单元素都会为空,这是因为这种方式会产生新的request生命周期,在这个request中只会包含超连接后跟随的?param1这种参数, 因此我的建议是如果不是很简单的页面跳转(比如回登陆页面之类的),尽量不要用这种超连接方式。

2:即传参又提交表单
     如果确实既要像上述第一种方式传参数,又要提交表单的话,可以采取如下方式:

XXX在脚本中如下处理:

function commonSubmit(url)
{
    form1.action="/jsp/managerAction.do?"+url;
    form1.submit();
}

提交到Action和jsp是一样的原理,但要记住
中method=post不能少,否则它只提交表单而不传param参数了(正好和第一种相反:) )
 
3:js和java变量互传
     在jsp中经常会遇到把js变量赋给java变量,或者将java变量赋给js变量的情况,在此将通用的处理方法小结如下:
java变量传给js好办,var a ="";注意要将引号""加上;js变量给java稍微复杂点,一般是在表单中用一个
的隐藏表单元素,然后在脚本中将js变量值赋给它:

var jsParamValue=aaaa;
form1.jsParam.value=jsParamValue;

然后就可以request.getPrameter("jsPrama");来取得js变量值了
 
4:Action中request不会丢掉
     不知大家有没有注意到这个好处,Struts架构中是由一个ActionServlet来作为MVC的控制器角色,jsp页面提交后request是传到ActionServelt中的, 而ActionServlet将根据struts-config.xml中的配置调用相应的Action的方法,并将从jsp中获得的request传给Action类,这样request的生命周期是连续的,即你在jsp中提交了表单,在Action中执行了方法,再回到jsp页面,用request.getParamter()取jsp页面的表单元素值会发现它还在,这对于页面下拉列表等选择项防止复位是一个很好实现方法。

5:传参时参数有空格的情况
      如果你提交form时带参数,比如form1.action="/jsp/Action.do?param1="+value1,注意如果value1中带有空格的话,你在

Action中request.getParameter("param1");

取得的只是空格前的值,因此如果有这种带空格的参数在传递时,个人建议是将其转化为特定的字符串,value1=value1.replaceAll(" ","%NULL%");
然后在Action中将其转回来:request.getParamter("param1").replaceAll("%NULL%"," "); 
 
6:form-data属性
     如果你要用来上传文件的话,注意在一个表单中如果有enctype="multipart/form-data"属性的话,是不能接收除type=file外的其他表单元素类型的。 即如果你把和放在同一表单中,而该表单有enctype="multipart/form-data"的话,request.getParamter取text的值会为空, 这个问题的最简单的解决方法是将单独放一个表单,上传文件时只提交该表单即可。
 
7:jsp中开模式对话框的方式
      与Swing中类似,jsp中也有模式对话框这一概念,你可以将一个jsp页面放到一个模式对话框中打开,这样在模式对话框消失前,原jsp页面将不可操作。特别适合父页面中要做一些额外的选择操作,而又没必要跳转到新的jsp页面的时候,
开模式对话框的方式参考如下:

Function open() {
  If(window.showModelDialog())
  {
      Var returnValue = showModelDialog(“/jsp/模式窗口包含的jsp页面路径”;
               help=0;status=0;center=yes;dialogWidth=100pt;dialogHeight=100pt”);
   }
 
}
分享到:
评论

相关推荐

    JSP 登录跳转页面

    JSP 登录跳转页面 在本节中,我们将详细介绍 JSP 登录跳转页面的实现细节,包括首页登录页面、判断 check 页面和最后的成功登录显示页面。 首页登录页面 首页登录页面是用户登录系统的入口点。该页面是使用 JSP ...

    JSP页面跳转方法总结

    ### JSP页面跳转方法详解 #### 一、概述 JSP(Java Server Pages)是一种动态网页技术标准,被广泛应用于构建动态网站和Web应用程序。在JSP开发中,页面跳转是一项非常基础且重要的功能,它使得用户能够在不同的...

    jsp页面的五种跳转方式

    ### JSP 页面的五种跳转方式详解 在 Web 开发中,页面之间的跳转是十分常见的需求之一。对于使用 Java Server Pages (JSP) 的开发者来说,掌握不同类型的页面跳转方法非常重要,这不仅有助于提高开发效率,还能增强...

    jsp实现页面跳转的方法

    ### jsp实现页面跳转的方法详解 在JavaServer Pages(JSP)开发中,页面跳转是一项基本且关键的技术,用于实现用户界面的导航和控制流。本文将深入探讨两种主要的页面跳转方法——`jsp:include`与`jsp:forward`,并...

    jsp_html_web_实现页面跳转

    在Web开发中,页面跳转是一项基础而重要的技术,它涉及到多个层面的知识,包括但不限于服务器端处理、客户端JavaScript操作以及HTTP协议的理解等。 ### 一、JSP在Web开发中的角色 JSP(JavaServer Pages)是一种...

    JSP和HTML跳转.zip_html挑转jsp_jsp和HEML跳转_jsp和HTML跳转

    3. HTML与JSP的交互:HTML页面可以通过表单提交或者JavaScript调用AJAX请求,将数据发送到JSP进行处理,然后JSP可以返回一个新的HTML页面或者JSON数据,由前端JavaScript负责更新页面内容。 总结,HTML页面跳转和...

    jsp与Servlet跳转

    - Error.jsp:错误处理页面。 2. **Servlet结构** - InputServlet:处理从Index.jsp过来的请求,并转发到Input.jsp。 - ConfirmServlet:处理从Input.jsp提交的数据,并转发到Confirm.jsp。 - ResultServlet:...

    jsp页面跳转的五中方法

    使用`forward()`进行页面跳转时,原先表单提交的数据会被传递到目标页面,从而使得目标页面能够访问这些数据。但是需要注意的是,`forward()`不能用于跳转到包含`<frameset>`标记的JSP文件,但可以跳转到包含`...

    实验2_Jsp语法 -页面基本结构、指令标记和动作标记

    ### 实验2_Jsp语法 -页面基本结构、指令标记和动作标记 ...本次实验不仅加深了对JSP语法的理解,还锻炼了实际操作能力,尤其是在页面跳转、数据传递与处理等方面,为后续更复杂的Web应用开发奠定了坚实的基础。

    jsp 应用获取表单元素

    错误处理和重定向:\n 如果表单数据验证失败,可以使用response.sendRedirect()重定向到错误提示页面,或者使用JSP内置的errorPage指令跳转。\n\n总结来说,JSP获取表单元素的技术是构建动态Web应用的基础,它涉及...

    JSP页面的跳转方式汇总

    在Java Server Pages (JSP) 技术中,页面之间的跳转是非常常见的操作,对于实现用户交互和数据处理至关重要。本文将详细介绍七种常用的JSP页面跳转方法,并对其进行深入分析。 #### 1. 使用超级链接跳转 通过在HTML...

    JSP页面的五种跳转方法

    JSP页面的五种跳转方法是Web开发中常见的页面间导航技术,它们允许开发者在用户请求之间灵活地转移控制流。以下是这五种方法的详细介绍: 1. **RequestDispatcher.forward()** - `RequestDispatcher.forward()`...

    纯jsp登录界面自动跳转

    这些表单会提交到服务器端的JSP页面进行处理。 ```jsp <form action="login.jsp" method="post"> 用户名:<input type="text" name="username" required><br> 密码:...

    jsp与Servlet跳转实例

    ### jsp与Servlet跳转实例:深入理解信息提交与页面跳转 在Web开发中,JSP(Java Server Pages)和Servlet是两个重要的技术组件,它们共同协作来处理客户端请求并生成动态网页内容。本文将详细解析一个具体的案例...

    JSP_页面跳转,JSP_页面跳转

    在实际开发中,页面跳转的应用场景非常广泛,如登录后跳转到用户主页、错误处理后的跳转提示、表单提交后的结果反馈等。正确选择和使用`sendRedirect()`与`forward()`,能够显著提升Web应用程序的用户体验和性能表现...

    java-web学习demo--最简单的servlet jsp跳转传值

    本示例"java-web学习demo--最简单的servlet jsp跳转传值"主要展示了如何通过Servlet处理HTTP请求,并将数据传递到JSP页面进行展示。下面将详细讲解这个过程。 1. **Servlet**: Servlet是Java编程语言中实现服务器...

    jsp chap01-信息管理系统

    - **动作**(Actions):比如`<jsp:include>`, `<jsp:forward>`, `<jsp:params>`等,用于在运行时处理页面间的跳转、插入外部资源等。 3. **JSP内置对象**: JSP提供了九个内置对象,如`request`, `response`, `...

    Jsp链接Mysql+Jsp注册表单(学习笔记).

    例如,使用JSP的`response.sendRedirect()`方法跳转到成功页面,或在当前页面显示消息。 8. **安全性考虑** 在实际应用中,应考虑更安全的做法,如使用加密存储密码、盐值加哈希、使用连接池管理数据库连接等。 9...

Global site tag (gtag.js) - Google Analytics