JS根据key值获取URL中的参数值及把URL的参数转换成json对象


Posted in Javascript onAugust 26, 2015

不废话了,直接贴代码了,通过示例一讲解JS根据key值获取URL中的参数值及把URL的参数转换成json对象,示例二讲解js获取url传递参数,具体内容请看下文

示例一:

//把url的参数部分转化成json对象 

parseQueryString: function (url) {
  var reg_url = /^[^\?]+\?([\w\W]+)$/,
   reg_para = /([^&=]+)=([\w\W]*?)(&|$|#)/g,
   arr_url = reg_url.exec(url),
   ret = {};
  if (arr_url && arr_url[1]) {
   var str_para = arr_url[1], result;
   while ((result = reg_para.exec(str_para)) != null) {
    ret[result[1]] = result[2];
   }
  }
  return ret;
 }

// 通过key获取url中的参数值

getQueryString: function (name) {
  var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
  var r = window.location.search.substr(1).match(reg);
  if (r != null) return unescape(r[2]);
  return null;
 }

示例二:

js通过两种方法获取url传递参数:

js获取url传递参数方法一:

 这里是一个获取URL带QUESTRING参数的JAVASCRIPT客户端解决方案,相当于asp的request.querystring,PHP的$_GET
函数:

<Script language="javascript">
function GetRequest() {
 
 var url = location.search; //获取url中"?"符后的字串
 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]]=(strs[i].split("=")[1]);
  }
 }
 return theRequest;
}
</Script>

然后我们通过调用此函数获取对应参数值:

<Script language="javascript">
var Request = new Object();
Request = GetRequest();
var 参数1,参数2,参数3,参数N;
参数1 = Request[''参数1''];
参数2 = Request[''参数2''];
参数3 = Request[''参数3''];
参数N = Request[''参数N''];
</Script>

以此获取url串中所带的同名参数

js获取url传递参数方法二 正则分析法:

function GetQueryString(name) {
  var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)","i");
  var r = window.location.search.substr(1).match(reg);
  if (r!=null) return (r[2]); return null;
}
alert(GetQueryString("参数名1"));
alert(GetQueryString("参数名2"));
alert(GetQueryString("参数名3"));

其他参数获取介绍:

//设置或获取对象指定的文件名或路径。

alert(window.location.pathname);

//设置或获取整个 URL 为字符串。

alert(window.location.href);

//设置或获取与 URL 关联的端口号码。

alert(window.location.port);

//设置或获取 URL 的协议部分。

alert(window.location.protocol);

//设置或获取 href 属性中在井号“#”后面的分段。

alert(window.location.hash);

//设置或获取 location 或 URL 的 hostname 和 port 号码。

alert(window.location.host);

//设置或获取 href 属性中跟在问号后面的部分。

alert(window.location.search);

以上内容介绍了JS根据key值获取URL中的参数值及把URL的参数转换成json对象,js通过两种方式获取url传递参数,代码

非常简单,希望对大家有所帮助。

Javascript 相关文章推荐
JS获取整个页面文档的实现代码
Dec 15 Javascript
ASP.NET jQuery 实例7 通过jQuery来获取DropDownList的Text/Value属性值
Feb 03 Javascript
多种方法判断Javascript对象是否存在
Sep 22 Javascript
javascript框架设计读书笔记之种子模块
Dec 02 Javascript
js格式化时间的方法
Dec 18 Javascript
JavaScript中日期函数的相关操作知识
Aug 03 Javascript
jQueryUI Datepicker组件设置日期高亮
Oct 13 Javascript
vue中mint-ui环境搭建详细介绍
Apr 06 Javascript
JS实现禁止高频率连续点击的方法【基于ES6语法】
Apr 25 Javascript
你可能不知道的JSON.stringify()详解
Aug 17 Javascript
angularJs中$http获取后台数据的实例讲解
Aug 08 Javascript
jenkins自动构建发布vue项目的方法步骤
Jan 04 Vue.js
jquery实现的横向二级导航效果代码
Aug 26 #Javascript
jQuery三级下拉列表导航菜单代码分享
Apr 15 #Javascript
jquery用ajax方式从后台获取json数据后如何将内容填充到下拉列表
Aug 26 #Javascript
js钢琴按钮波浪式图片排列效果代码分享
Aug 26 #Javascript
javascript中alert()与console.log()的区别
Aug 26 #Javascript
JavaScript基本数据类型及值类型和引用类型
Aug 25 #Javascript
基于jQuery实现的QQ表情插件
Aug 25 #Javascript
You might like
中高级PHP程序员应该掌握哪些技术?
2016/09/23 PHP
Laravel 实现密码重置功能
2018/02/23 PHP
JavaScript中的Window窗口对象
2008/01/16 Javascript
为调试JavaScript添加输出窗口的代码
2010/02/07 Javascript
IE中createElement需要注意的一个问题
2010/07/13 Javascript
jQuery EasyUI API 中文文档 - Form表单
2011/10/06 Javascript
JS获取图片实际宽高及根据图片大小进行自适应
2013/08/11 Javascript
js实现正方形颜色从下往上升的效果
2014/08/04 Javascript
JavaScript对Json的增删改属性详解
2016/06/02 Javascript
详细探究ES6之Proxy代理
2016/07/22 Javascript
jquery操作checkbox火狐下第二次无法勾选的解决方法
2016/10/10 Javascript
jstree的简单实例
2016/12/01 Javascript
手机软键盘弹出时影响布局的解决方法
2016/12/15 Javascript
Bootstrap3 多个模态对话框无法显示的解决方案
2017/02/23 Javascript
vue使用中的内存泄漏【推荐】
2018/07/10 Javascript
微信小程序实现发红包功能
2018/07/11 Javascript
解决jquery有正确返回值但不执行success函数的问题
2018/08/20 jQuery
javascript设计模式 ? 原型模式原理与应用实例分析
2020/04/10 Javascript
Python MySQLdb Linux下安装笔记
2015/05/09 Python
Python简单实现Base64编码和解码的方法
2017/04/29 Python
opencv python 傅里叶变换的使用
2018/07/21 Python
pycham查看程序执行的时间方法
2018/11/29 Python
python requests post多层字典的方法
2018/12/27 Python
Python实现的企业粉丝抽奖功能示例
2019/07/26 Python
python实现名片管理器的示例代码
2019/12/17 Python
通过python 执行 nohup 不生效的解决
2020/04/16 Python
类如何去实现接口
2013/12/19 面试题
畜牧兽医本科生个人的自我评价
2013/10/11 职场文书
医学生自荐信
2013/12/03 职场文书
土建资料员岗位职责
2014/01/04 职场文书
关于爱国的标语
2014/06/24 职场文书
美德少年事迹材料500字
2014/08/19 职场文书
自我查摆剖析材料
2014/10/11 职场文书
群众路线调研报告范文
2014/11/03 职场文书
毕业设计指导教师评语
2014/12/30 职场文书
阳光体育运动标语口号
2015/12/26 职场文书