js获取url地址里的数据
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js获取url地址里的数据相关的知识,希望对你有一定的参考价值。
比如:http://网址/baike/3534.html?page=xxx
我想用JS获取“3534”这个变量,怎么获取?谢谢
1.采用正则表达式获取地址栏参数:
代码如下:
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;
// 调用方法
alert(GetQueryString("参数名1"));
alert(GetQueryString("参数名2"));
alert(GetQueryString("参数名3"));
2.例子:
若地址栏URL为:abc.html?id=123&url=http://www.maidq.com
用上面的方法去调用:alert(GetQueryString("url"));
则会弹出一个对话框:内容就是 http://www.maidq.com
如果用:alert(GetQueryString("id"));那么弹出的内容就是 123 ;
加一个判断 ,判断请求的参数是否为空把值赋给一个变量:
var myurl=GetQueryString("url");
if(myurl !=null && myurl.toString().length>1)
alert(GetQueryString("url"));
参考技术B
可以使用javascript里面window自己方法。下面是代码,仅供参考:
window.location ----->可以获取浏览器地址 每一段信息http://www.a.com/app/a.html?a=12#1 //这个是url地址信息
alert(window.location.search);// 获取后面的数据 -->?a=12 参考技术C var url=location.href;
var match_arr=url.match(/\/([\w]*)\.html/i);
alert(match_arr[1]); //弹出的结果是3534 参考技术D var url = document.location.href;
var urlList = url.split('/');
var a = urlList[urlList.length-1].split('.')[0];本回答被提问者采纳
将url地址里的参数转为对象
参考技术A 如果是vue的话可以直接通过this.$route.query来获取下面是原生写法
function UrlParamHash (url)
var params =
var h
var hash = url.slice(url.indexOf('?') + 1).split('&')
for (var i = 0; i < hash.length; i++)
h = hash[i].split('=') //
params[h[0]] = h[1]
return params
以上是关于js获取url地址里的数据的主要内容,如果未能解决你的问题,请参考以下文章