JS获取URL的参数
Posted cencenyue
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS获取URL的参数相关的知识,希望对你有一定的参考价值。
用JS来获取地址栏(URL)里面的参数
首先,我们要先获取地址栏里的内容。这里就要用到location对象。
location最有用的BOM对象之一,它提供了与当前窗口中加载的文档有关的信息。并且还将URL解析为独立的片段,我们可以通过不同的属性来访问这些片段。
location属性: 例如:https://wwww.maidp.com/index.html?value=12&name="jack"&id=5#imhere
属性名 | 说明 | 举例 |
protocol | 返回页面所使用的协议 常为http或https | "https:" |
hostname | 返回服务器名称(不带端口号) | "www.maidq.com" |
port | 返回端口号(如果使用默认端口80则返回空字符串,否则返回端口号) | "" |
host | 返回服务器名称和端口号 | "www.maidq.com" |
search | 返回URL中的参数 | "?value=12&name="jack"&id=5" |
href | 返回当前加载页面的完整的URL。location对象的toString()方法也返回这个值 | "https://wwww.maidp.com/index.html?value=12&name="jack"&id=5#imhere" |
pathname | 返回URL中的目录、文件名,路径部分 | "/fisker/post/0703/window.location.html" |
hash | 返回URL中的hash(#号后跟0个或多个字符),如果URL中不包含散列,则返回空字符串 | "#imhere" |
下来咱们就来实现用原生JS获取地址栏里面的参数吧。
方法一:
function getURLParm(){ var parm = location.href;//获取当前页面的URL var parm_result = new Object;//用于存储参数 var start = parm.indexOf("?") != -1 ? parm.indexOf("?")+1 : parm.length;//判断是否有参数 var end = parm.indexOf("#") != -1 ? parm.indexOf("#")-parm.indexOf("?") : parm.length;//判断参数内容结束的地方 parm = parm.substring(start,end);//将参数部分截取出来 parm_array = parm.split("&");//将每个参数依次存入数组 for(var i = 0;i < parm_array.length;i++) { parm_result[parm_array[i].split("=")[0]] = parm_array[i].split("=")[1];//遍历数组,将参数值赋给相应的参数名 } return parm_result; } console.log(getURLParm());
以上是关于JS获取URL的参数的主要内容,如果未能解决你的问题,请参考以下文章