首页 > 上网技巧 > 电脑小技巧 > JavaScript使用正则获取请求的URL参数

JavaScript使用正则获取请求的URL参数

时间:2015-03-28 21:45 作者:QQ地带 我要评论

在ASP.NET后台代码中,对于这样的URL请求地址:http://www.oicqzone.com?id=001,我们可以通过Request.QueryString["id"]的方法很容易的获取到URL中请求的参数的值,但是要在前台js代码中获取请求的参数的值,应该怎么做呢?
第一种方法:
 
<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>
 
第二种方法:
当然我们可以在后台中获取参数的值,然后在前台js代码中获取变量的值,具体做法请参考我的这篇文章:JavaScript获取后台C#变量以及调用后台方法。 
 
其实我们也可以直接在js中获取请求的参数的值,通过使用window.location.search可以获取到当前URL的?号开始的字符串,如前面的链接获取到的search为?id=001。再对获取的字符串进行处理,就可以获取到参数的值了。 
 
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; 
 
在调用上面的方法的时候,只要传入参数的名称,就可以获取到你想要的参数的值了,如:getUrlParam("id")。

标签: JS
顶一下
(0)
0%
踩一下
(0)
0%

Google提供的广告