在jsp中獲取完整地址或某部分

在jsp中獲取完整地址或某部分

在jsp中有時候需要獲取當前頁面的完整地址或者某一部分。
URL:統一資源定位符 (Uniform Resource Locator).
完整的URL包含的幾個部分:

scheme://host:port/path?query#fragment

scheme(通信協議):常用的http,ftp
host(主機):服務器主機名或IP地址。
port(端口號):使用的端口號,省略時使用默認的端口,如http的是80。
path(路徑):一般用來指向某個文件,一般是“/”隔開的字符串。
query(查詢):用於傳遞參數時,如果不需要傳遞參數則沒有,多個參數通過“&”符號隔開,參數寫法:“參數名=參數值”。
fragment(信息片斷):字符串,用於指定網絡資源中的片斷。

如(虛擬的):
http://www.baidu.com:8080/srfx/v/main.html?id=1&name=wj#imhere
在jsp中獲取:
1.window.location.href
獲取整個地址,返回值:
http://www.baidu.com:8080/srfx/v/main.html?id=1&name=wj#imhere

2.window.location.protocol
獲取協議,返回值:
http:

3.window.location.host
獲取主機,返回值:
www.baidu.com

4.window.location.port
獲取端口號,返回值:
8080
(如果採用的是默認的端口號,即使在地址中寫了(如80:),返回的是空字符串:“”)

5.window.location.pathname
獲取的是路徑,返回值:
/srfx/v/main.html

6.window.location.serach
獲取參數部分,返回值:
?id=1&name=wj

7.window.location.hash
獲取錨點

附加:
一般用的多的是獲取參數部分:window.location.search

function getQueryString(name) {
	  var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i');
	  var r = window.location.search.substr(1).match(reg);
	  if (r != null) {
	    return unescape(r[2]);
	  }
	  return null;
}

調用上面的方法傳入參數名,即可返回參數值

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章