更多信息请查看 java进阶网 http://www.javady.com/index.php/category/thread
还记得刚开始写代码的时候就遇到过这样的问题:从一个jsp页面跳转到另外一个jsp页面,中间不经过servlet,要在第二个jsp页面取到第一个页面传的参数。当时试过几种方法,都成功了。现在,好久没有这样用,居然都忘光了,所以记录下,方便自己以后查找。
jsp1页面一有一个url是这样的:
- function gotourl(type){
- window.location.href="${ctxPath}/jsp/order/order_add.jsp?roomType="+type;
- }
jsp2页面而需要得到roomType这个参数。并且放入隐藏域<input type="hidden" name="roomType" id="roomType" value="">中
方法一:
- <script type="text/javascript">
- <%
- String type = (String)request.getParameter("roomType");
- %>
- document.getElementById("roomType").value=<%=type%>;
- </script>
方法二:
- <input type="hidden" name="roomType" id="roomType" value="${param.roomType }"/>
方法二只有在引入了jstl标签的时候才有用。
方法三:如果这两个页面在DOM中有一定的联系的话,可以通过DOM对象来得到。比如jsp2在jsp1页面下面的一个iframe里面就可以这样得到:
- <script type="text/javascript">
- var a = window.parent.document.getElementById("roomType").value;
- alert(a)
- </script>