一、GET请求新页面

1.1、超链接请求新页面

<!-- 超链接到page2 -->
<a href="page2.jsp">链接到page2</a><br>
<!-- 超链接到page2,弹出新窗口 -->
<a href="page2.jsp" target="_blank">在窗口中链接到page2</a><br>
<!-- 相对路径链接到page2 在相同文件夹下就.-->
<a href="./page2.jsp">相对路径链接到page2</a><br>
<a href="../demo1/page2.jsp">相对路径链接到page2</a><br>
<!-- 绝对路径链接到page2 -->
<!-- 第一种 -->
<a href="http://localhost:8080/test1/demo1/page2.jsp">绝对路径链接到page2</a><br>
<!-- 第二种使用request.getcontextpath取得路径 -->
<a href="<%=request.getContextPath() %>/demo1/page2.jsp">绝对路径链接到page2</a><br>
<!-- 链接到page2,并传参 直接在URL后面加?参数=值-->
<a href="page2.jsp?uid=admin">链接到page2并传参 直接在URL后面加</a><br>

1.2、使用js链接到新页面

<script type="text/javascript">
function fun(){
//在现在有窗口中打开
//window.location="page2.jsp?uid=test";
//在窗口打开
window.open("page2.jsp?uid=new"); }
</script>
<!-- 使用js链接到page2 -->
<a href='javascript:window.location="page2.jsp"'>使用js链接到page2一</a><br>
<!-- 第二种将上面的写成javascript脚本调用方法 -->
<a href="javascript:fun();">使用js链接到page2二</a><br>
<!-- 使用js链接到page2,并传参 直接在URL后面加?参数=值-->
<a href="javascript:fun();">使用js链接到page2加参数</a><br>
<!-- 使用js链接到page2,弹出新窗口,并传参 -->
<a href="javascript:fun();">使用js链接到page2弹出新窗口</a><br>

二、POST请求新页面

2.1、submit提交表单

<script type="text/javascript">
function fun2(){
//是否为空
var uid=document.getElementById("uid").value;
if (uid==""){
alert("请输入内容");
return false;
}else{
return true;
}
}
</script>
<!-- 第一种submit提交表单 -->
<!-- submit提交表单 -->
<form action="page2.jsp" method="post">
<input type="text" name="uid">
<input type="submit" value="提交">
</form>
<!-- 验证后提交表单 -->
<form action="page2.jsp" method="post">
<input type="text" name="uid" id="uid" >
<input type="submit" value="提交" onclick="return fun2();">
</form>
<!-- url方式提交数据 -->
<form action="page2.jsp?uid=test" method="post"> <input type="submit" value="提交">
</form>
<!-- hidden方式提交数据 -->
<form action="page2.jsp" method="post">
<input type="hidden" id="uid2" name="uid2" value="test1" >
<input type="submit" value="提交">
<script type="text/javascript">
var uid=document.getElementById("uid2").value="test2";
</script>
</form>

2.2、js提交表单

<!-- button+js提交表单 -->
<form id="form1" action="page2.jsp" method="post">
<input type="text" name="uid">
<input type="button" value="提交" onclick='document.getElementById("form1").submit();'>
</form>
<!-- <a>+js提交表单 -->
<form id="form2" action="page2.jsp" method="post">
<input type="text" name="uid">
<a href='javascript:document.getElementById("form2").submit();'>提交</a>
</form>

page2

<h1>page2</h1>
<%
request.setCharacterEncoding("utf-8");
String uid=request.getParameter("uid");
String uid2=request.getParameter("uid2");
%>
<h1>UID的值:&nbsp;<%=uid %></h1>
<h1>UID2的值:&nbsp;<%=uid2 %></h1>

JSP的页面连接和提交方式(web基础学习笔记六)的更多相关文章

  1. 使用JSP实现输出(web基础学习笔记二)

    Jsp:Java Server Page 服务器端的Java页面,动态网页技术 jsp注释 显式注释:这种注释客户端是允许看见的;<!--html注释--> 隐式注释:这种注释客户端是看不 ...

  2. JSTL 标签库 使用(web基础学习笔记十九)

    标签库概要: 一.C标签库介绍 1.1.<c:> 核心标签库  JSTL 核心标签库(C标签)标签共有13个,功能上分为4类:1.表达式控制标签:out.set.remove.catch2 ...

  3. JSP实现数据传递(web基础学习笔记三)

    get和post的区别: JSP内置对象: 1)out内置对象:out内置对象是在JSP开发过程中使用得最为频繁的对象,然而其使用起来也是最简单的.out对象用于向客户端浏览器输出数         ...

  4. JSP的范围-作用域(web基础学习笔记五)

    JSP的范围(作用域) 在JSP页面中的对象,包括用户创建的对象如JavaBean,都有一个范围属性,这个范围也被叫做“作用域”.范围定义了在什么时间内,在哪一个JSP页面中可以访问这些对象.例如,s ...

  5. JSP实现数据保存(web基础学习笔记四)

    session对象: //服务端设置Session属性 session.setAttribute("user", username); //客户端接收Session Object ...

  6. 页面可视化编辑ckeditor(web基础学习笔记十五)

    一.CKedit下载ckedit 下载地址:http://ckeditor.com/ 二.ckedit的引入 2.1.解压并将ckedit复制到项目中 2.2.在页面中引入 在页面头部加入 <s ...

  7. 简单分页查询(web基础学习笔记十三)

    一.建立资源文件和工具类 1.1 .database.properties jdbc.driver_class=oracle.jdbc.driver.OracleDriver jdbc.connect ...

  8. 监听器(web基础学习笔记二十二)

    一.监听器 监听器是一个专门用于对其他对象身上发生的事件或状态改变进行监听和相应处理的对象,当被监视的对象发生情况时,立即采取相应的行动.监听器其实就是一个实现特定接口的普通java程序,这个程序专门 ...

  9. Servlet一(web基础学习笔记二十)

    一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...

随机推荐

  1. brainfuck 解释器

    #include <cstdio>#include <cmath>#include <cstring>#include <ctime>#include ...

  2. JQ中get()与eq()的区别

    .eq() : 减少匹配元素的集合,根据index索引值,精确指定索引对象. .get() : 通过检索匹配jQuery对象得到对应的DOM元素. 同样是返回元素,那么eq与get有什么区别呢? eq ...

  3. HAproxy和TIME WAIT的一次问题排查

    近日平稳运行了将近4年的发号器突然出现问题,在元旦0分的时候出现短暂的性能下降,导致发号失败率飙高到一个不可接收的值,哎,意外总是发生在你想不到的地方. 这几天赶紧和小伙伴们赶紧追查原因,制定改造方案 ...

  4. 如何在windows server 2008上配置NLB群集

    参考:http://zlwdouhao.blog.51cto.com/731028/781828 前些天写了一篇关于NLB群集模式多播和单播的简单介绍.那么下面我们一起来探讨一下,如何在windows ...

  5. js比较两个String字符串找出不同,并将不同处高亮显示

    根据java代码改写成js,下边js文件代码: function StringBuffer() { this.__strings__ = []; }; StringBuffer.prototype.a ...

  6. echarts在数据改变后,折线图并没有全部刷新

    在做一个BI项目的时候,图表需要区分国内和国外显示.当前用户所属企业具备国内外权限的时候,展示两条图表,当查看其他企业需要根据选中的企业所具备的权限改变图表.即刚开始显示两条折线图,更改选择条件并重新 ...

  7. 线程系列06,通过CLR代码查看线程池及其线程

    在"线程系列04,传递数据给线程,线程命名,线程异常处理,线程池"中,我们已经知道,每个进程都有一个线程池.可以通过TPL,ThreadPool.QueueUserWorkItem ...

  8. C#程序集系列06,程序集清单,EXE和DLL的区别

    CLR在加载程序集的时候会查看程序集清单,程序集清单包含哪些内容呢?可执行文件和程序集有什么区别/ 程序集清单 □ 查看程序集清单 →清空F盘as文件夹中的所有内容→创建MainClass.cs文件→ ...

  9. 用Redis实现分布式锁以及redission使用

    原文:https://my.oschina.net/wangnian/blog/668830 前言:分布式环境有很多问题,比如你前一个请求访问的是服务器A,第二个请求访问到了服务器B,就会发生并发重复 ...

  10. SQL Server批量替换全部表中内容sql语句-清楚挂马

    有朋友常常会发现自己的数据库全部的内容给插入了一些代码,假设要一个个表一个个记录去删除.太麻烦了,以下我在在网上找到一个能够批量删除的方法,实际上是批量把那段恶意代码替换,很高速. declare @ ...