jsp子父窗体之间如何传值

来源:互联网 发布:淘宝童装批发怎么宣传 编辑:程序博客网 时间:2024/05/16 05:18

在web开发中,经常遇见页面之间的跳转和子父窗体传值等,下面,我就用这个小例子来处理子父窗体的传值

JSP中,第一次用到一个页面留言的功能,要求提交留言成功后弹出一个小窗口提示留言正确与否,如果留言成功则出现成功页面,关闭此页面,转向网站主页;反之则停留在提交信息页面。

 

                                                       

登陆成功后的页面:

如果登陆用户名为空,到达错误页面

Struts-config.xml中的配置如下

<action-mappings >

    <action

      attribute="pageForm"

      input="/form/page.jsp"

      name="pageForm"

      path="/page"

      scope="request"

      type="com.luojs.struts.action.PageAction" >

      <forward name="success" path="/success.jsp"></forward>

      <forward name="error" path="/error.jsp"></forward>

      </action>

 

  </action-mappings>

Action 中的代码如下:

public ActionForward execute(ActionMapping mapping, ActionForm form,

           HttpServletRequest request, HttpServletResponse response) {

       PageForm pageForm = (PageForm) form;// TODO Auto-generated method stub

        HttpSession session = request.getSession();

       String forward="error";

       String name = pageForm.getName();

       String pass = pageForm.getPass();

        if(null!=name && null != pass){

           if(!"".equals(name)&& !"".equals(pass)){

               session.setAttribute("name", pageForm.getName());

                  forward="success";

           }else{

              session.setAttribute("err", "you errors (*.*)");

           }

       }else{

          session.setAttribute("err", "name==null || password ==null ");

       }     

       return mapping.findForward(forward);

    }


程序布局如下所示;

index.jsp代码清单:

<%@ page language="java" pageEncoding="GBK"%>

<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>

<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>

 

<html>

    <head>

       <title>JSP for LoginForm form</title>

       <script type="text/javascript">

            function doSubmit(){

               var form=document.form1;

               form.action = "page.do";

               var openWindow = window.open ('','openWindow',"top = 200,left = 300 ,height=315px,width=394px,scrollbars=no,resizable=no,toolbar=no, menubar=no");

                openWindow.focus();

               form.target="openWindow";

               form.submit();

          }

       </script>

 

    </head>

    <body>

    <h2>提交表单:</h2><hr/>

       <form name="form1">&nbsp;&nbsp; name:

           <input type="text" name="name" />

           &nbsp;&nbsp; pass:

           <input type="password" name="pass" />

           <input name="login" type="button" onClick="doSubmit()" value="login">

       </form>

    </body>

</html>

 

 

Login.jsp代码清单如下;

<body>

    <h2>提交表单:</h2><hr/>

       <form name="form1">&nbsp;&nbsp; name:

           <input type="text" name="name" />

           &nbsp;&nbsp; pass:

           <input type="password" name="pass" />

           <input name="login" type="button" onClick="doSubmit()" value="login">

       </form>

    </body>

Success.jsp代码清单如下:

<%@ page language="java" pageEncoding="GBK"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

    <head>

 

       <title>My JSP 'index.jsp' starting page</title>

      

        <script language="javascript">

               function windowclose(){

                    window.opener.location.href="/pageForward/index.jsp";

                    window.close();

                }

        </script>

 

    </head>

 

    <body>

       <form action="" method="post" name="form1">

 

           <input name="welcome" type="button" onClick="windowclose()"

              value="点击返回首页"> <h3>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;welcome you ${name } ^_^</h3>

       </form>

    </body>

</html>

 

Error.jsp代码清单如下:

<%@ page language="java" pageEncoding="GBK"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

    <head>

       <script language="javascript">

             function windowclose(){

                  window.opener.location.reload();

                  window.close();

            }

      </script>

       <title>My JSP 'index.jsp' starting page</title>

    </head>

    <body>

       <h4>&nbsp;&nbsp;&nbsp; ${err}<hr>

       </h4><h4><a href="javascript:windowclose();">返回登陆页</a>      </h4>

    </body>

</html>

 

 

原创粉丝点击