Javascript 获取链接(url)参数的方法[正则与截取字符串]


Posted in Javascript onFebruary 09, 2010

当然,我们也可以用正则直接匹配,文章中也给出了一个正则的例子。
分解链接的方式:

<script type="text/javascript"> 
<!-- 
// 说明:Javascript 获取链接(url)参数的方法 function getQueryString(name) 
{ 
// 如果链接没有参数,或者链接中不存在我们要获取的参数,直接返回空 
if(location.href.indexOf("?")==-1 || location.href.indexOf(name+'=')==-1) 
{ 
return ''; 
} 
// 获取链接中参数部分 
var queryString = location.href.substring(location.href.indexOf("?")+1); 
// 分离参数对 ?key=value&key2=value2 
var parameters = queryString.split("&"); 
var pos, paraName, paraValue; 
for(var i=0; i<parameters.length; i++) 
{ 
// 获取等号位置 
pos = parameters[i].indexOf('='); 
if(pos == -1) { continue; } 
// 获取name 和 value 
paraName = parameters[i].substring(0, pos); 
paraValue = parameters[i].substring(pos + 1); 
// 如果查询的name等于当前name,就返回当前值,同时,将链接中的+号还原成空格 
if(paraName == name) 
{ 
return unescape(paraValue.replace(/\+/g, " ")); 
} 
} 
return ''; 
}; 
//http://localhost/test.html?aa=bb&test=cc+dd&ee=ff 
alert(getQueryString('test')); 
//--> 
</script>

用正则匹配的方式:
<script type="text/javascript"> 
<!-- 
function getQueryStringRegExp(name) 
{ 
var reg = new RegExp("(^|\\?|&)"+ name +"=([^&]*)(\\s|&|$)", "i"); 
if (reg.test(location.href)) return unescape(RegExp.$2.replace(/\+/g, " ")); return ""; 
}; //http://localhost/test.html?aa=bb&test=cc+dd&ee=ff 
alert(getQueryStringRegExp('test')); 
//--> 
</script>
Javascript 相关文章推荐
风吟的小型JavaScirpt库 (FY.JS).
Mar 09 Javascript
JS隐藏参数post传值实例
Apr 18 Javascript
JS.elementGetStyle(element, style)应用示例
Sep 24 Javascript
jQuery之过滤元素操作小结
Nov 30 Javascript
推荐JavaScript实现继承的最佳方式
Nov 11 Javascript
jQuery中bind()方法用法实例
Jan 19 Javascript
javascript实时获取鼠标坐标值并显示的方法
Apr 30 Javascript
jQuery实现带滚动导航效果的全屏滚动相册实例
Jun 19 Javascript
jQuery实现返回顶部功能
Feb 23 Javascript
Vue路由history模式解决404问题的几种方法
Sep 29 Javascript
微信小程序调用微信支付接口的实现方法
Apr 29 Javascript
vue实现滑动切换效果(仅在手机模式下可用)
Jun 29 Javascript
一个XML格式数据转换为图表的例子
Feb 09 #Javascript
javascript 解析url的search方法
Feb 09 #Javascript
toString()一个会自动调用的方法
Feb 08 #Javascript
jQuery AJAX回调函数this指向问题
Feb 08 #Javascript
JavaScript Event学习第九章 鼠标事件
Feb 08 #Javascript
JavaScript 类似flash效果的立体图片浏览器
Feb 08 #Javascript
js 省地市级联选择
Feb 07 #Javascript
You might like
PHP COOKIE设置为浏览器进程
2009/06/21 PHP
详解PHP对象的串行化与反串行化
2016/01/24 PHP
javascript instanceof 与typeof使用说明
2010/01/11 Javascript
学习js在线html(富文本,所见即所得)编辑器
2012/12/18 Javascript
单击按钮显示隐藏子菜单经典案例
2013/01/04 Javascript
详解JS: reduce方法实现 webpack多文件入口
2017/02/14 Javascript
Node.js使用NodeMailer发送邮件实例代码
2017/03/06 Javascript
AngularJS的脏检查深入分析
2017/04/22 Javascript
vue中使用vue-router切换页面时滚动条自动滚动到顶部的方法
2017/11/28 Javascript
vue中实现图片和文件上传的示例代码
2018/03/16 Javascript
vue init webpack myproject构建项目 ip不能访问的解决方法
2018/03/20 Javascript
react 国际化的实现代码示例
2018/09/14 Javascript
在微信小程序中渲染HTML内容的方法示例
2018/09/28 Javascript
vue+elementUI实现表单和图片上传及验证功能示例
2019/05/14 Javascript
layui表格数据复选框回显设置方法
2019/09/13 Javascript
vue实现微信浏览器左上角返回按钮拦截功能
2020/01/18 Javascript
Postman参数化实现过程及原理解析
2020/08/13 Javascript
vue实现简易计算器功能
2021/01/20 Vue.js
python自动化生成IOS的图标
2018/11/13 Python
selenium+python自动化测试之使用webdriver操作浏览器的方法
2019/01/23 Python
Python中常用的8种字符串操作方法
2019/05/06 Python
基于python的列表list和集合set操作
2019/11/24 Python
Python实现在Windows平台修改文件属性
2020/03/05 Python
Python将字典转换为XML的方法
2020/08/01 Python
css3 box-shadow阴影(外阴影与外发光)图示讲解
2017/08/11 HTML / CSS
详解纯CSS3制作的20种loading动效
2017/07/05 HTML / CSS
如何实现jdbc性能优化
2012/07/30 面试题
中层干部竞争上岗演讲稿
2014/01/13 职场文书
十佳护士获奖感言
2014/02/18 职场文书
事业单位个人查摆问题及整改措施
2014/10/28 职场文书
征求意见函
2015/06/05 职场文书
教师学习心得体会范文
2016/01/21 职场文书
2019自荐信该如何写呢?
2019/07/05 职场文书
利用 SQL Server 过滤索引提高查询语句的性能分析
2021/07/15 SQL Server
Nginx内网单机反向代理的实现
2021/11/07 Servers
在windows server 2012 r2中安装mysql的详细步骤
2022/07/23 Servers