js使用正则获取当前页面url指定参数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js使用正则获取当前页面url指定参数相关的知识,希望对你有一定的参考价值。
参考技术A 网址: http://1.com/调用: QueryString('name')
返回: null
网址: http://1.com/?name=cwj&age=21
调用: QueryString('name')
返回: cwj
现在随便拿一个网址: https://m.weibo.cn/u/5902368392?topnav=1&wvr=6&is_all=1&jumpfrom=weibocom ,这个网址的 location 是:
所以这个地址的 location.search 是 ?topnav=1&wvr=6&is_all=1&jumpfrom=weibocom ,这就是需要执行匹配的字符串
match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
存放匹配结果的数组。在这个方法中将匹配结果放在了数组 sValue 中。
RegExp 对象表示正则表达式
该对象接受两个参数,第一个参数是一个字符串,指定了正则表达式的模式或其他正则表达式。第二个参数 i 代表着区分大小写的匹配。
调用该方法: QueryString('wvr') ,根据以上正则表达式匹配出来的结果是:
要注意的是 match 方法返回的数组 0 位置是匹配的字符串,所以相应参数在 sValue[1] 中
js获取当前域名Url相对路径和参数以及指定参数
- JS获取当前域名有两种方法
方法一:var domain =document.domain;
方法二:var domain =window.location.host;
注意问题:
由于获取到的当前域名不包括 http://,所以把获取到的域名赋给 a 标签的 href 时,别忘了加上 http://,否则单击链接时导航会出错。
- 获取当前URL的4种方式
- 获取当前URL参数的方法
方式一:varurl =window.location.href;
方式二: varurl =self.location.href;
方式三:varurl = document.URL;
方式四: varurl =document.location;
注意问题:ie 地址栏显示的是什么,获取到的 url 就是什么。
3. 获取相对路径的方法
首先获取 Url,然后把 Url 通过 // 截成两部分,再从后一部分中截取相对路径。如果截取到的相对路径中有参数,则把参数去掉。
functionGetUrlRelativePath()
{
varurl =document.location.toString();
vararrUrl = url.split("//");
var start = arrUrl[1].indexOf("/");
varrelUrl = arrUrl[1].substring(start);//stop省略,截取从start开始到结尾的所有字符
if(relUrl.indexOf("?") != -1){
relUrl= relUrl.split("?")[0];
}
returnrelUrl;
}
调用方法:GetUrlRelativePath();
举例:假如当前 Url 是 http// www. liangshunet. com/pub/item.aspx?t=osw7,则截取到的相对路径为:/pub/item.aspx。
functionGetUrlPara()
{
varurl =document.location.toString();
vararrUrl = url.split("?");
varpara = arrUrl[1];
returnpara;
}
调用方法:GetUrlPara()
举例:假如当前 Url 是 http// www. liangshunet. com/pub/item.aspx?t=osw7,则截取到的参数部分为:t=osw7。
- 获取指定URL参数的方法
//paraName 等找参数的名称
functionGetUrlParam(paraName) {
varurl =document.location.toString();
vararrObj = url.split("?");
if (arrObj.length> 1) {
vararrPara = arrObj[1].split("&");
vararr;
for (var i = 0; i <arrPara.length; i++) {
arr= arrPara[i].split("=");
if (arr != null&&arr[0] ==paraName) {
returnarr[1];
}
}
return "";
}
else {
return "";
}
}
调用方法:GetUrlParam("id");
举例说明:
假如当网页的网址有这样的参数 test.htm?id=896&s=q&p=5,则调用 GetUrlParam("p"),返回 5。
以上是关于js使用正则获取当前页面url指定参数的主要内容,如果未能解决你的问题,请参考以下文章