jsp獲取地址欄上的參數和獲取controller中經過ModelAndView綁定的屬性值

獲取地址欄上的參數javascript

參考地址css

一、使用jsp小腳本實現html

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

便可取出地址欄傳遞的key所表明的值java

二、使用EL表達式實現jquery

<h2>${param.key}</h2>`

也能夠取出地址欄傳遞的key所表明的值spring

三、使用javascript實現app

<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>

`jsp

也能夠取出地址欄傳遞的key所表明的值ui

四、jQuery擴展方法實現url

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綁定的值呢?

一、在JSP中經過EL表達式進行獲取(比較經常使用)

後臺:ModelAndView model = new ModelAndView();

model.addObject(「name」,「Jims」);

JSP:在JSP中直接使用${name }進行獲取

姓名:${name }

二、經過JSP內置對象進行獲取

後臺:ModelAndView model = new ModelAndView();

model.addObject(「name」,「Jims」);

前臺:<% String name = request.getAttribute(「name」); %>

以上兩種方式是在JSP中獲取ModelAndView綁定的值,那麼如何在頁面的JS中獲取ModelAndView綁定的值呢?

一、最麻煩的一種:

後臺:ModelAndView model = new ModelAndView();

model.addObject(「name」,「Jims」);

JSP:

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

二、和第一種相似:

後臺:ModelAndView model = new ModelAndView();

model.addObject(「name」,「Jims」);

JSP:<% String name=request.getAttribute(「name」); %>

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

三、第三種比較簡單也較爲經常使用一些

後臺:ModelAndView model = new ModelAndView();

model.addObject(「name」,「Jims」);

JS:var name = ‘${name}’;這樣子即可以 直接獲取到在ModelAndView中綁定的name屬性

附:

代碼示例:

controller:

[@Controller](https://my.oschina.net/u/1774615)
@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

輸出結果:

相關文章
相關標籤/搜索