在JavaScript中獲取請求的URL參數(shù)[正則]
更新時間:2010年12月25日 23:24:06 作者:
在ASP.NET后臺代碼中,對于這樣的URL請求地址:http://www.abc.com?id=001,我們可以通過Request.QueryString["id"]的方法很容易的獲取到URL中請求的參數(shù)的值,但是要在前臺js代碼中獲取請求的參數(shù)的值,應(yīng)該怎么做呢?
第一種方法:,代碼比較專業(yè) 推薦
<script>
function GetLocationParam(param){
var request = {
QueryString : function(val) {
var uri = window.location.search;
var re = new RegExp("" +val+ "=([^&?]*)", "ig");
return ((uri.match(re))?(decodeURI(uri.match(re)[0].substr(val.length+1))):'');
}
}
return request.QueryString(param);
}
var uid=GetLocationParam("uid");
</script>
第二種方法:
當(dāng)然我們可以在后臺中獲取參數(shù)的值,然后在前臺js代碼中獲取變量的值,具體做法請參考我的這篇文章:JavaScript獲取后臺C#變量以及調(diào)用后臺方法。
其實(shí)我們也可以直接在js中獲取請求的參數(shù)的值,通過使用window.location.search可以獲取到當(dāng)前URL的?號開始的字符串,如前面的鏈接獲取到的search為?id=001。再對獲取的字符串進(jìn)行處理,就可以獲取到參數(shù)的值了。
function getUrlParam(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null)
return unescape(r[2]);
return null;
}
在調(diào)用上面的方法的時候,只要傳入?yún)?shù)的名稱,就可以獲取到你想要的參數(shù)的值了,如:getUrlParam("id")。
復(fù)制代碼 代碼如下:
<script>
function GetLocationParam(param){
var request = {
QueryString : function(val) {
var uri = window.location.search;
var re = new RegExp("" +val+ "=([^&?]*)", "ig");
return ((uri.match(re))?(decodeURI(uri.match(re)[0].substr(val.length+1))):'');
}
}
return request.QueryString(param);
}
var uid=GetLocationParam("uid");
</script>
第二種方法:
當(dāng)然我們可以在后臺中獲取參數(shù)的值,然后在前臺js代碼中獲取變量的值,具體做法請參考我的這篇文章:JavaScript獲取后臺C#變量以及調(diào)用后臺方法。
其實(shí)我們也可以直接在js中獲取請求的參數(shù)的值,通過使用window.location.search可以獲取到當(dāng)前URL的?號開始的字符串,如前面的鏈接獲取到的search為?id=001。再對獲取的字符串進(jìn)行處理,就可以獲取到參數(shù)的值了。
復(fù)制代碼 代碼如下:
function getUrlParam(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null)
return unescape(r[2]);
return null;
}
在調(diào)用上面的方法的時候,只要傳入?yún)?shù)的名稱,就可以獲取到你想要的參數(shù)的值了,如:getUrlParam("id")。
您可能感興趣的文章:
- JavaScript正則替換HTML標(biāo)簽功能示例
- php正則去除網(wǎng)頁中所有的html,js,css,注釋的實(shí)現(xiàn)方法
- Java/Js下使用正則表達(dá)式匹配嵌套Html標(biāo)簽
- javascript下一個還原h(huán)tml代碼的正則
- JS正則表達(dá)式獲取字符串中特定字符的方法
- javascript 獲取url參數(shù)的正則表達(dá)式(用來獲取某個參數(shù)值)
- Javascript 獲取鏈接(url)參數(shù)的方法[正則與截取字符串]
- node.js正則表達(dá)式獲取網(wǎng)頁中所有鏈接的代碼實(shí)例
- JS獲取網(wǎng)址中指定值的正則函數(shù)
- JavaScript中使用正則匹配多條,且獲取每條中的分組數(shù)據(jù)
- javascript 獲取鏈接文件地址中第一個斜線內(nèi)的正則表達(dá)式
- javascript使用正則獲取url上的某個參數(shù)
- JS正則獲取HTML元素的方法
相關(guān)文章
javascript實(shí)現(xiàn)圣旨卷軸展開效果(代碼分享)
本文主要介紹了javascript實(shí)現(xiàn)圣旨卷軸展開效果的示例代碼。具有很好的參考價(jià)值。下面跟著小編一起來看下吧2017-03-03關(guān)于JavaScript中的this指向問題總結(jié)篇
在小編面試過程中經(jīng)常會遇到j(luò)avascript中this指向問題,可以說是前端面試必問,下面小編給大家總結(jié)了一下js中this的指向,感興趣的朋友一起學(xué)習(xí)吧2017-07-07JS中的回調(diào)函數(shù)(callback)講解
回調(diào)函數(shù)是一段可執(zhí)行的代碼段,它作為一個參數(shù)傳遞給其他的代碼,其作用是在需要的時候方便調(diào)用這段(回調(diào)函數(shù))代碼,這篇文章主要介紹了JS中的?回調(diào)函數(shù)(callback),需要的朋友可以參考下2022-12-12JavaScript中通用的jquery動畫滾屏實(shí)例
這篇文章主要介紹了JavaScript中通用的jquery動畫滾屏實(shí)例,本文通過實(shí)際代碼來詳解實(shí)現(xiàn)方法,需要的朋友可以參考一下2022-07-07javascript獲取所有同類checkbox選項(xiàng)(實(shí)例代碼)
javascript獲取所有同類checkbox選項(xiàng)的簡單實(shí)例。需要的朋友可以過來參考下,希望對大家有所幫助2013-11-11JavaScript生成指定范圍隨機(jī)數(shù)和隨機(jī)序列的方法
這篇文章主要介紹了JavaScript生成指定范圍隨機(jī)數(shù)和隨機(jī)序列,非常不錯,具有參考借鑒價(jià)值,需要的朋友可以參考下2018-05-05