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 相关文章推荐
基于JavaScript 类的使用详解
May 07 Javascript
Js操作树节点自动折叠展开的几种方法
May 05 Javascript
jQuery实现百叶窗焦点图动画效果代码分享(附源码下载)
Mar 14 Javascript
BootStrap智能表单实战系列(四)表单布局介绍
Jun 13 Javascript
javaScript事件机制兼容【详细整理】
Jul 23 Javascript
jquery attr()设置和获取属性值实例教程
Sep 25 Javascript
jQuery使用eraser.js插件实现擦除、刮刮卡效果的方法【附eraser.js下载】
Apr 28 jQuery
jquery获取transform里的值实现方法
Dec 12 jQuery
Vue 源码分析之 Observer实现过程
Mar 29 Javascript
一步一步的了解webpack4的splitChunk插件(小结)
Sep 17 Javascript
微信小程序结合mock.js实现后台模拟及调试
Mar 28 Javascript
vue 中 elment-ui table合并上下两行相同数据单元格
Dec 26 Javascript
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在innodb引擎下快速代建全文搜索功能简明教程【基于xunsearch】
2016/10/14 PHP
php指定长度分割字符串str_split函数用法示例
2017/01/30 PHP
Ruffy javascript 学习笔记
2009/11/30 Javascript
js parseInt(&quot;08&quot;)未指定进位制问题
2010/06/19 Javascript
jQuery.autocomplete 支持中文输入(firefox)修正方法
2011/03/10 Javascript
屏蔽IE弹出&quot;您查看的网页正在试图关闭窗口,是否关闭此窗口&quot;的方法
2013/12/31 Javascript
js检测浏览器版本、核心、是否移动端示例
2014/04/24 Javascript
批量修改标签css样式以input标签为例
2014/07/31 Javascript
javascript实现类似java中getClass()得到对象类名的方法
2015/07/27 Javascript
js实现的后台左侧管理菜单代码
2015/09/11 Javascript
JavaScript提高性能知识点汇总
2016/01/15 Javascript
如何解决手机浏览器页面点击不跳转浏览器双击放大网页
2016/07/01 Javascript
BootStrap轻松实现微信页面开发代码分享
2016/10/21 Javascript
JavaScript如何实现图片处理与合成
2020/05/29 Javascript
python检测远程端口是否打开的方法
2015/03/14 Python
python开发之IDEL(Python GUI)的使用方法图文详解
2015/11/12 Python
基于hashlib模块--加密(详解)
2017/06/21 Python
python操作excel文件并输出txt文件的实例
2018/07/10 Python
用python打印菱形的实操方法和代码
2019/06/25 Python
有关Tensorflow梯度下降常用的优化方法分享
2020/02/04 Python
Python+Kepler.gl轻松制作酷炫路径动画的实现示例
2020/06/02 Python
Python LMDB库的使用示例
2021/02/14 Python
美国亚马逊旗下男装网站:East Dane(支持中文)
2019/09/25 全球购物
小米官方旗舰店:Xiaomi
2020/08/07 全球购物
专升本个人自我评价
2013/12/22 职场文书
期中考试后的反思
2014/02/08 职场文书
请假条怎么写
2014/04/10 职场文书
大学生入党推荐书范文
2014/05/17 职场文书
测控技术自荐信
2014/06/05 职场文书
关于保护环境的标语
2014/06/09 职场文书
工作失误检讨书(3篇)
2014/10/11 职场文书
党的群众路线教育实践活动心得体会(教师)
2014/10/31 职场文书
体育教师个人工作总结
2015/02/09 职场文书
钱学森电影观后感
2015/06/04 职场文书
小学家庭教育心得体会
2016/01/14 职场文书
磁贴还没死, 微软Win11可修改注册表找回Win10开始菜单
2021/11/21 数码科技