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 相关文章推荐
JavaScript splice()方法详解
Sep 22 Javascript
js中replace的用法总结
Dec 27 Javascript
JavaScript对象参数的引用传递
Jan 14 Javascript
基于JS如何实现类似QQ好友头像hover时显示资料卡的效果(推荐)
Jun 09 Javascript
基于HTML+CSS+JS实现增加删除修改tab导航特效代码
Aug 05 Javascript
新入门node.js必须要知道的概念(必看篇)
Aug 10 Javascript
使用JavaScript获取Request中参数的值方法
Sep 27 Javascript
微信小程序滚动Tab实现左右可滑动切换
Aug 17 Javascript
vue将时间戳转换成自定义时间格式的方法
Mar 02 Javascript
Vue封装的可编辑表格插件方法
Aug 28 Javascript
JavaScript栈和队列相关操作与实现方法详解
Dec 07 Javascript
微信小程序之左右布局的实现代码
Dec 13 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
如何正确理解PHP的错误信息
2006/10/09 PHP
php中全局变量global的使用演示代码
2011/05/18 PHP
php检查字符串中是否包含7位GSM字符的方法
2015/03/17 PHP
php使用NumberFormatter格式化货币的方法
2015/03/21 PHP
PHP版本如何选择?应该使用哪个版本?
2015/05/13 PHP
php实现异步数据调用的方法
2015/12/24 PHP
PHP入门教程之表单与验证实例详解
2016/09/11 PHP
Sample script that deletes a SQL Server database
2007/06/16 Javascript
ExtJS 简介 让你知道extjs是什么
2008/12/29 Javascript
你必须知道的Javascript知识点之&quot;单线程事件驱动&quot;的使用
2013/04/23 Javascript
JavaScript中使用自然对数ln的方法
2015/06/14 Javascript
详解jQuery中的deferred对象的使用(一)
2016/05/27 Javascript
AngularJS中isolate scope的用法分析
2016/11/22 Javascript
微信小程序加载更多 点击查看更多
2016/11/29 Javascript
基于JS实现弹出一个隐藏的div窗口body页面变成灰色并且不可被编辑
2016/12/14 Javascript
简单三步实现报表页面集成天气
2016/12/15 Javascript
vue-cli结合Element-ui基于cropper.js封装vue实现图片裁剪组件功能
2018/03/01 Javascript
webpack配置打包后图片路径出错的解决
2018/04/26 Javascript
JavaScript中CreateTextFile函数
2020/08/30 Javascript
[20:46]Ti4循环赛第三日VG vs DK
2014/07/12 DOTA
Python基于identicon库创建类似Github上用的头像功能
2017/09/25 Python
解决Spyder中图片显示太小的问题
2018/04/27 Python
python3.4实现邮件发送功能
2018/05/28 Python
Python (Win)readline和tab补全的安装方法
2019/08/27 Python
Django实现文件上传和下载功能
2019/10/06 Python
Python通过VGG16模型实现图像风格转换操作详解
2020/01/16 Python
用python写爬虫简单吗
2020/07/28 Python
Python Selenium实现无可视化界面过程解析
2020/08/25 Python
Python爬取豆瓣数据实现过程解析
2020/10/27 Python
data:image data url 文件转为Blob上传后端的方法
2019/07/16 HTML / CSS
SmartBuyGlasses台湾:名牌眼镜,名牌太阳眼镜及隐形眼镜
2017/01/04 全球购物
什么是组件架构
2016/05/15 面试题
高中生活自我鉴定
2014/01/18 职场文书
淘宝文案策划岗位职责
2015/04/14 职场文书
redis缓存存储Session原理机制
2021/11/20 Redis
JavaScript流程控制(分支)
2021/12/06 Javascript