首页 / JAVASCRIPT / js获取URL里的参数
js获取URL里的参数
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了js获取URL里的参数,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2971字,纯文字阅读大概需要5分钟。
内容图文
第一种 通过正则获取URL中指定的参数
/* * * 获取指定的URL参数值 * URL:http://www.xxx.com/index?name=123 * 参数:param URL参数 * 调用方法:getParam("name") * 返回值:123 * alert(getParam(‘date‘)); */ function getParam(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); //search,查询?后面的参数,并匹配正则var r = location.search.substr(1).match(reg); if (r != null) return decodeURI(decodeURI(r[2])); }
第二种 既可以获取URL中全部参数,也可以获取单个参数
/* * * js获取url参数值
* 思路,通过location的search获取url中问号后面的值,字符串过滤掉问号,再通过split方法分割参数集合、循环赋值、匹配对应的参数,最后返回值 * URL:http://www.xxx.com/index?name=123 * 参数:param URL参数 * 调用方法:getUrlParams("name") * 返回值:123 * alert(getUrlParams(‘date‘)); */ function getUrlParams(name) { // 不传name返回所有值,否则返回对应值var url = window.location.search; if (url.indexOf(‘?‘) == 1) { returnfalse; } url = url.substr(1); url = url.split(‘&‘); var name = name || ‘‘; var nameres; // 获取全部参数及其值for(var i=0;i<url.length;i++) { var info = url[i].split(‘=‘); var obj = {}; obj[info[0]] = decodeURI(info[1]); url[i] = obj; } // 如果传入一个参数名称,就匹配其值if (name) { for(var i=0;i<url.length;i++) { for (const key in url[i]) { if (key == name) { nameres = url[i][key]; } } } } else { nameres = url; } // 返回结果return nameres; }
const url = ‘http://www.abc.com/test.php?id=1&from=index‘; var res = getUrlParams(); var res1 = getUrlParams(‘id‘); console.log(res); // [{id: "1"}, {from: "index"}] console.log(res1); // 1
第三种 获取URL中的参数名及参数值的集合
/* * * [获取URL中的参数名及参数值的集合] * 示例URL:http://htmlJsTest/getrequest.html?uid=admin&rid=1&fid=2&name=小明 * @param {[string]} urlStr [当该参数不为空的时候,则解析该url中的参数集合] * @return {[string]} [参数集合] */ function GetRequest(urlStr) { if (typeof urlStr == "undefined") { var url = decodeURI(location.search); //获取url中"?"符后的字符串 } else { var url = "?" + urlStr.split("?")[1]; } var theRequest = new Object(); if (url.indexOf("?") != -1) { var str = url.substr(1); strs = str.split("&"); for (var i = 0; i < strs.length; i++) { theRequest[strs[i].split("=")[0]] = decodeURI(strs[i].split("=")[1]); } } return theRequest; }
var parms_1 = GetRequest(); 2 console.log(parms_1); // {"uid":"admin","rid":"1","fid":"2","name":"小明"} 3 console.log(parms_1[‘name‘]); // ‘小明‘ 4 var parms_2 = GetRequest(‘http://htmlJsTest/getrequest.html?uid=admin&rid=1&fid=2&name=小明‘); 5 console.log(parms_2); // {"uid":"admin","rid":"1","fid":"2","name":"小明"} 6 console.log(parms_2[‘name‘]); // ‘小明‘
第四种 通过参数名获取url中的参数值
/* * * [通过参数名获取url中的参数值] * 示例URL:http://htmlJsTest/getrequest.html?uid=admin&rid=1&fid=2&name=小明 * @param {[string]} queryName [参数名] * @return {[string]} [参数值] */ function GetQueryValue(queryName) { var query = decodeURI(window.location.search.substring(1)); var vars = query.split("&"); for (var i = 0; i < vars.length; i++) { var pair = vars[i].split("="); if (pair[0] == queryName) { return pair[1]; } } returnnull; }
1 var queryVal=GetQueryValue(‘name‘); 2 console.log(queryVal);// 小明
原文:https://www.cnblogs.com/niuben/p/12144196.html
内容总结
以上是互联网集市为您收集整理的js获取URL里的参数全部内容,希望文章能够帮你解决js获取URL里的参数所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。