一、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. JSP 上传文件

    <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" ...

  2. ExtJS BorderLayout

    <HTML> <HEAD> <TITLE>布局</TITLE> <link rel="stylesheet" type=&qu ...

  3. 《STL源代码剖析》---stl_set.h阅读笔记

    SET是STL中的标准容器,SET里面的元素会依据键值自己主动排序,它不像map那样拥有实值value和键值key的相应,set仅仅有实值.SET的底层实现时RB-tree,当插入到RB-tree中后 ...

  4. 汇编语言的Hello World

      汇编语言的Hello World,汇编语言没有我想象的那么低级,它已经具备了不少高级语言的特性,代码也变得清晰,层次清楚,易于维护了. a.asm .386 .model flat,stdcall ...

  5. python笔记1-用python解决小学生数学题

    前几天有人在群里给小编出了个数学题: 假设你有无限数量的邮票,面值分别为6角,7角,8角,请问你最大的不可支付邮资是多少元? 小编掰着手指头和脚趾头算了下,答案是:1.7元 那么问题来了?为啥是1.7 ...

  6. Android之LogUtil

    提供debug与release的时候是否屏蔽打印信息,把信息选择性的进行保存,可以是否自动保存crash的堆栈信息.来自github上的一个开源项目,https://github.com/syxc/L ...

  7. python 查看模块的存放位置

    执行 dlib.__file__ 输出 '/anaconda2/lib/python2.7/site-packages/dlib/__init__.pyc'

  8. 0, \0, NULL

    字符串.字符数组输入.输出与'\0'的问题 原创首发,欢迎转载! 作者按 字符串.字符数组以"%s"格式输入时,以遇到'空格'为这个字符串输入结束. 字符串.字符数组以" ...

  9. C语言:内存的分配与管理

    1.内存区域的划分标准: 代码段             存储代码 数据段             静态/全局数据.常量(const)      堆区(heap)           动态内存分配(更 ...

  10. 3D屏保:N皇后

    前几天园子里有人发表关于8皇后的算法.只有代码,没有能运行的DEMO多枯燥.于是我这两天抽时间写了个N皇后的屏保程序.程序启动后会从4皇后到14皇后显示其所有排列,每隔0.5秒自动切换一次.按下空格键 ...