jsp的三种页面跳转方式
1.from表单提交
from表单的页面跳转有post和get两种跳转方式,其中get是不加密的,通过地址栏传递数据,post是加密的
在index.jsp页面写上from表单
<!-- 表单提交页面跳转 -->
<!-- 跳转方式有两种:post和get -->
<!-- action后面接要跳转的地址 method接跳转的方式 -->
<form action="indexServlet.jsp" method="post">
<input type="text" name="a">
<input type="text" name="b">
<input type="submit" value="提交">
</form>
在要跳转的indexServlet.jsp页面获取数据并打印
<%
<!--在post跳转方式下,在要跳转的页面可能会出现乱码的问题,这里需要加上编码的声明,若不会出现乱码则不用加 -->
<!--request.setCharacterEncoding("UTF-8");-->
String a = request.getParameter("a");
String b = request.getParameter("b");
out.print("第一个数据为:" + a + "<br/>第二个数据为:" + b);
%>
a链接 是采用地址栏传参的方式,属于get方式
<!-- a链接页面跳转 -->
<!-- 传递的参数可以用字符串拼接的方式 -->
<a href="indexServlet.jsp?a=5&b=20">链接</a>
js页面跳转是采用鼠标事件的方式,通过dom操作获取参数,同样是通过地址栏传递参数,属于get方式
<!-- js页面跳转 -->
请输入第一个数据:<input type="text" id="a"/><br/>
请输入第二个数据:<input type="text" id="b"/><br/>
<input type="button" id="btn1" value="提交数据"/>
<script>
window.onload=function(){
var btn1 = document.getElementById("btn1");
btn1.onclick=function(){
var a = document.getElementById("a").value;
var b = document.getElementById("b").value;
window.location="indexServlet.jsp?a="+a+"&b="+b+"";
}
}
</script>
小结:在用户与服务器产生交互时,页面之间的跳转非常频繁,因此在做页面跳转以及不同页面之间数据交换的时候,一定要先 理清页面跳转的顺序,思路清晰才能做到效率编码.