jsp获取地址栏上的参数和获取controller中通过ModelAndView绑定的属性值

获取地址栏上的参数

参考地址

1、使用jsp小脚本实现

<%String value=request.getParameter("key");%>

即可取出地址栏传递的key所代表的值

2、使用EL表达式实现
<h2>${param.key}</h2>

也可以取出地址栏传递的key所代表的值

3、使用javascript实现

	<script type="text/javascript"> 	
		function GetQueryString(name)    
       	 {    
            	var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");    
            	var r = window.location.search.substr(1).match(reg);    
            	if(r!=null)return unescape(r[2]); return null;    
       	 }   
        var myurl=GetQueryString("key");  
    </script>

也可以取出地址栏传递的key所代表的值

4、jQuery扩展方法实现
jquery扩展了一个getUrlParam()方法

    <script type="text/javascript" src="js/jquery.1.8.3.min.js"></script>
   	<script type="text/javascript">
       $(function($){
           $.getUrlParam = function(name)
           {
               var reg = new RegExp("(^|&)"+name +"=([^&]*)(&|$)");
               var r= window.location.search.substr(1).match(reg);
               if (r!=null) return unescape(r[2]); return null;
           }
       });
   $.getUrlParam('key');也可以取出地址栏传递的key所代表的值
</script>

获取controller中通过ModelAndView绑定的属性值

参考地址

springMVC中通过ModelAndView进行后台与页面的数据交互,那么如何在页面中获取ModelAndView绑定的值呢?

1、在JSP中通过EL表达式进行获取(比较常用)

后台:ModelAndView model = new ModelAndView();

model.addObject(“name”,“Jims”);

JSP:在JSP中直接使用${name }进行获取

姓名:${name }

2、通过JSP内置对象进行获取

后台:ModelAndView model = new ModelAndView();

model.addObject(“name”,“Jims”);

前台:<% String name = request.getAttribute(“name”); %>

以上两种方式是在JSP中获取ModelAndView绑定的值,那么如何在页面的JS中获取ModelAndView绑定的值呢?

1、最麻烦的一种:

后台:ModelAndView model = new ModelAndView();

model.addObject(“name”,“Jims”);

JSP:

JS:var name = $("#method1").val();

2、和第一种类似:

后台:ModelAndView model = new ModelAndView();

model.addObject(“name”,“Jims”);

JSP:<% String name=request.getAttribute(“name”); %>

JS:var name=’<%=name %>’;

3、第三种比较简单也较为常用一些

后台:ModelAndView model = new ModelAndView();

model.addObject(“name”,“Jims”);

JS:var name = ‘${name}’;这样子便可以 直接获取到在ModelAndView中绑定的name属性

附:

代码示例:
controller:

@Controller
@RequestMapping("/login")
public class LoginController {  
  
    @RequestMapping("/index")
    public ModelAndView index(HttpServletRequest request, HttpServletResponse response) {  
        ModelAndView mav = new ModelAndView("index");
        request.setAttribute("nihao", "lijun");
        return mav;  
    }  
} 

jsp:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'index.jsp' starting page</title>
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
  </head>
  
  <body>
    This is my JSP page. <br>
    这是controller中通过ModelAndView绑定的属性值:<br>
    1 ${nihao }<br>
    2 <%=request.getAttribute("nihao") %><br>
    这是URL地址栏中的参数,该参数并没有在controller中通过ModelAndView绑定属性值:<br>
    3 ${param.hello }<br>
    4 <%=request.getParameter("hello") %><br>
    
  </body>
</html>

访问地址:
http://localhost:8080/login/index?hello=world

输出结果:
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值