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 相关文章推荐
TextArea设置MaxLength属性最大输入值的js代码
Dec 21 Javascript
jQuery+ajax实现鼠标单击修改内容的思路
Jun 29 Javascript
AngularJS 最常用的功能汇总
Feb 17 Javascript
js实现商品抛物线加入购物车特效
Nov 18 Javascript
Jquery揭秘系列:ajax原生js实现详解(推荐)
Jun 08 Javascript
JSONP和批量操作功能的实现方法
Aug 21 Javascript
bootstrap选项卡使用方法解析
Jan 11 Javascript
touch.js 拖动、缩放、旋转 (鼠标手势)功能代码
Feb 04 Javascript
微信小程序自定义导航隐藏和显示功能
Jun 13 Javascript
微信小程序之swiper滑动面板用法示例
Dec 04 Javascript
使用ThinkJs搭建微信中控服务的实现方法
Aug 08 Javascript
vue2.0 watch里面的 deep和immediate用法说明
Oct 30 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实现浏览器点击下载TXT文档的方法详解
2013/06/02 PHP
PHP中使用数组指针函数操作数组示例
2014/11/19 PHP
php查找指定目录下指定大小文件的方法
2014/11/28 PHP
Centos下升级php5.2到php5.4全记录(编译安装)
2015/04/03 PHP
微信支付开发发货通知实例
2016/07/12 PHP
thinkphp3.2.3版本的数据库增删改查实现代码
2016/09/22 PHP
浅谈PHP的$_SERVER[SERVER_NAME]
2017/02/04 PHP
JavaScript延迟加载
2021/03/09 Javascript
setAttribute 与 class冲突解决
2008/02/17 Javascript
分享27款非常棒的jQuery 表单插件
2011/03/28 Javascript
jQuery中outerWidth()方法用法实例
2015/01/19 Javascript
一篇文章掌握RequireJS常用知识
2016/01/26 Javascript
javascript实现右侧弹出“分享到”窗口效果
2016/02/01 Javascript
backbone简介_动力节点Java学院整理
2017/07/14 Javascript
iscroll.js滚动加载实例详解
2017/07/18 Javascript
20行JS代码实现粘贴板复制功能
2018/02/06 Javascript
Vue打包后出现一些map文件的解决方法
2018/02/13 Javascript
vue 使用Jade模板写html,stylus写css的方法
2018/02/23 Javascript
axios使用拦截器统一处理所有的http请求的方法
2018/11/02 Javascript
layui 上传文件_批量导入数据UI的方法
2019/09/23 Javascript
基于canvas实现手写签名(vue)
2020/05/21 Javascript
Python复制目录结构脚本代码分享
2015/03/06 Python
Python实现接受任意个数参数的函数方法
2018/04/21 Python
python实现任意位置文件分割的实例
2018/12/14 Python
布隆过滤器的概述及Python实现方法
2019/12/08 Python
python飞机大战pygame游戏之敌机出场实现方法详解
2019/12/17 Python
python切割图片的示例
2020/11/12 Python
Django视图类型总结
2021/02/17 Python
CSS3制作酷炫的条纹背景
2017/11/09 HTML / CSS
Lands’ End英国官方网站:高质量男女服装
2017/10/07 全球购物
C#里面可以避免一个类被其他类继承么?如何?
2013/09/26 面试题
《黄山奇石》教学反思
2014/04/19 职场文书
小学六年级学生评语
2014/04/22 职场文书
个人剖析材料及整改措施
2014/10/07 职场文书
2016党风廉政建设心得体会范文
2016/01/25 职场文书
Python数据分析入门之教你怎么搭建环境
2021/05/13 Python