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 相关文章推荐
jQuery select的操作实现代码
May 06 Javascript
浅析JavaScript原型继承的陷阱
Dec 03 Javascript
用javascript对一个json数组深度赋值示例
Jul 27 Javascript
js中window.open打开一个新的页面
Aug 10 Javascript
Javascript简单改变表单元素背景的方法
Jul 15 Javascript
JavaScript性能优化之小知识总结
Nov 20 Javascript
JavaScript下的时间格式处理函数Date.prototype.format
Jan 27 Javascript
基于JS实现省市联动效果代码分享
Jun 06 Javascript
全面理解闭包机制
Jul 11 Javascript
详解webpack编译多页面vue项目的配置问题
Dec 11 Javascript
实例分析js事件循环机制
Dec 13 Javascript
JS页面动态绘图工具SVG,Canvas,VML介简介
Oct 16 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
PHPMailer使用教程(PHPMailer发送邮件实例分析)
2012/12/06 PHP
destoon会员注册提示“数据校验失败(2)”解决方法
2014/06/21 PHP
PHP实现PDO的mysql数据库操作类
2014/12/12 PHP
php实现数组中索引关联数据转换成json对象的方法
2015/07/08 PHP
Javascript的构造函数和constructor属性
2010/01/09 Javascript
jquery动画3.创建一个带遮罩效果的图片走廊
2012/08/24 Javascript
javascript同页面多次调用弹出层具体实例代码
2013/08/16 Javascript
浅谈javascript中for in 和 for each in的区别
2015/04/23 Javascript
javascript实时显示当天日期的方法
2015/05/20 Javascript
JavaScript如何禁止Backspace键
2015/12/02 Javascript
利用prop-types第三方库对组件的props中的变量进行类型检测
2017/05/02 Javascript
vue监听scroll的坑的解决方法
2017/09/07 Javascript
Vue实现动态创建和删除数据的方法
2018/03/17 Javascript
vue实现简单loading进度条
2018/06/06 Javascript
微信小程序实现简单表格
2019/02/14 Javascript
零基础写python爬虫之HTTP异常处理
2014/11/05 Python
Python 25行代码实现的RSA算法详解
2018/04/10 Python
Python实现的凯撒密码算法示例
2018/04/12 Python
flask框架视图函数用法示例
2018/07/19 Python
对python:threading.Thread类的使用方法详解
2019/01/31 Python
Python数据可视化:泊松分布详解
2019/12/07 Python
python如何通过闭包实现计算器的功能
2020/02/22 Python
Python手动或自动协程操作方法解析
2020/06/22 Python
python如何调用java类
2020/07/05 Python
python 5个顶级异步框架推荐
2020/09/09 Python
AmazeUI的下载配置与Helloworld的实现
2020/08/19 HTML / CSS
很酷的小工具和电子产品商城:GearBest
2016/11/19 全球购物
Joseph官网:英国小众奢侈品牌
2019/05/17 全球购物
Unix里面如何在后台运行程序
2016/10/14 面试题
5.12护士节演讲稿
2014/04/30 职场文书
优秀实习生主要事迹
2014/05/29 职场文书
雷锋的故事观后感
2015/06/10 职场文书
元素水平垂直居中的方式
2021/03/31 HTML / CSS
分析Netty直接内存原理及应用
2021/06/14 Java/Android
Python实现制作销售数据可视化看板详解
2021/11/27 Python
 分享一个Python 遇到数据库超好用的模块
2022/04/06 Python