Javascript 获取链接(url)参数的方法


Posted in Javascript onFebruary 15, 2009

方法1:将链接当作字符串 ,按照链接的格式分解,然后获取对应的参数值。
方法2:用正则直接匹配。
关键字:parameter 参数:location.href,url ,链接,javascript
方法1:
分解链接方式:

<script type="text/javascript"> 
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>

方法2:
用正则匹配方式:
<script type="text/javascript"> 
function getQueryStringRegExp(name) 
{ 
var reg = new RegExp("(^|\\?|&)"+ name +"=([^&]*)(https://3water.com/file:///s:&%7C$)", "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 相关文章推荐
js仿百度贴吧验证码特效实例代码
Jan 16 Javascript
AngularJS语法详解(续)
Jan 23 Javascript
使用Raygun来自动追踪AngularJS中的异常
Jun 23 Javascript
js ajaxfileupload.js上传报错的解决方法
May 05 Javascript
Jquery $when done then的用法详解
May 20 Javascript
jQuery实现公告新闻自动滚屏效果实例代码
Jul 14 Javascript
jQuery常用样式操作实例分析(获取、设置、追加、删除、判断等)
Sep 08 Javascript
Angularjs实现上传图片预览功能
Sep 01 Javascript
jQuery实现简单的回到顶部totop功能示例
Oct 16 jQuery
ng-repeat指令在迭代对象时的去重方法
Oct 02 Javascript
JavaScript实现英语单词题库
Dec 24 Javascript
原生JavaScript实现弹幕组件的示例代码
Oct 12 Javascript
JavaScript 获得选中文本内容的方法
Feb 15 #Javascript
检测是否已安装 .NET Framework 3.5的js脚本
Feb 14 #Javascript
Javascript 跨域访问解决方案
Feb 14 #Javascript
JavaScript DOM 添加事件
Feb 14 #Javascript
CSS+Table图文混排中实现文本自适应图片宽度(超简单+跨所有浏览器)
Feb 14 #Javascript
JavaScript实现动态增加文件域表单
Feb 12 #Javascript
从JavaScript 到 JQuery (1)学习小结
Feb 12 #Javascript
You might like
星际争霸 Starcraft 发展史
2020/03/14 星际争霸
自己写的兼容低于PHP 5.5版本的array_column()函数
2014/10/24 PHP
PHP实现UTF-8文件BOM自动检测与移除实例
2014/11/05 PHP
PHP统计目录中文件以及目录中目录大小的方法
2016/01/09 PHP
Zend Framework教程之前端控制器Zend_Controller_Front用法详解
2016/03/07 PHP
PDO::getAttribute讲解
2019/01/28 PHP
javascript 基础篇4 window对象,DOM
2012/03/14 Javascript
js function定义函数的几种不错方法
2014/02/27 Javascript
Javascript实现的常用算法(如冒泡、快速、鸽巢、奇偶等)
2014/04/29 Javascript
Node.js中对通用模块的封装方法
2014/06/06 Javascript
JavaScript原生对象之String对象的属性和方法详解
2015/03/13 Javascript
js随机生成字母数字组合的字符串 随机动画数字
2015/09/02 Javascript
Bootstrap使用基础教程详解
2016/09/05 Javascript
Angular2  NgModule 模块详解
2016/10/19 Javascript
JQuery 又谈ajax局部刷新
2017/11/27 jQuery
利用SpringMVC过滤器解决vue跨域请求的问题
2018/02/10 Javascript
VeeValidate 的使用场景以及配置详解
2019/01/11 Javascript
关于vue的npm run dev和npm run build的区别介绍
2019/01/14 Javascript
[53:15]2018DOTA2亚洲邀请赛3月29日 小组赛A组 LGD VS TNC
2018/03/30 DOTA
Python实现识别图片内容的方法分析
2018/07/11 Python
Python 正则表达式匹配字符串中的http链接方法
2018/12/25 Python
深入了解Python枚举类型的相关知识
2019/07/09 Python
Python OpenCV图像指定区域裁剪的实现
2019/10/30 Python
Python 输出详细的异常信息(traceback)方式
2020/04/08 Python
pyecharts在数据可视化中的应用详解
2020/06/08 Python
python 密码学示例——凯撒密码的实现
2020/09/21 Python
Python中Selenium模块的使用详解
2020/10/09 Python
Python3.9.1中使用match方法详解
2021/02/08 Python
德国奢侈品网上商城:Mytheresa
2016/08/24 全球购物
网络教育毕业生自我鉴定
2013/10/10 职场文书
养殖行业的创业计划书
2014/01/05 职场文书
硕士生工作推荐信
2014/03/07 职场文书
人事任命书范文
2014/06/04 职场文书
2014年学校教学工作总结
2014/12/06 职场文书
实习协议书
2015/01/27 职场文书
python中redis包操作数据库的教程
2022/04/19 Python