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 相关文章推荐
完整显示当前日期和时间的JS代码
Sep 17 Javascript
Javascript 定时器调用传递参数的方法
Nov 12 Javascript
window.name代替cookie的实现代码
Nov 28 Javascript
用于节点操作的API,颠覆原生操作HTML DOM节点的API
Dec 11 Javascript
基于jquery的15款幻灯片插件
Apr 10 Javascript
js操纵跨frame的三级联动select下拉选项实例介绍
May 19 Javascript
javascript判断移动端访问设备并解析对应CSS的方法
Feb 05 Javascript
浅谈JavaScript 的执行顺序
Aug 07 Javascript
JSON 对象未定义错误的解决方法
Sep 29 Javascript
vue-dialog的弹出层组件
May 25 Javascript
JS正则验证多个邮箱完整实例【邮箱用分号隔开】
Apr 19 Javascript
微信公众号H5支付接口调用方法
Jan 10 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
提问的智慧
2006/10/09 PHP
php实现三级级联下拉框
2016/04/17 PHP
php微信公众平台开发(三)订阅事件处理
2016/12/06 PHP
php微信公众平台开发(四)回复功能开发
2016/12/06 PHP
jQuery帮助之CSS尺寸(五)outerHeight、outerWidth
2009/11/14 Javascript
jQueryUI的Dialog的简单封装
2010/06/07 Javascript
基于javascript实现的搜索时自动提示功能
2014/12/26 Javascript
AngularJS的内置过滤器详解
2015/05/14 Javascript
JavaScript中数据结构与算法(四):串(BF)
2015/06/19 Javascript
JS实现新浪微博效果带遮罩层的弹出框代码
2015/10/12 Javascript
JavaScript使用简单正则表达式的数据验证功能示例
2017/01/13 Javascript
JavaScript实现实时更新系统时间的实例代码
2017/04/04 Javascript
详解nodejs微信公众号开发——4.自动回复各种消息
2017/04/11 NodeJs
JS计算距当前时间的时间差实例
2017/12/29 Javascript
Vue组件化开发思考
2018/02/02 Javascript
Node.js使用MySQL连接池的方法实例
2018/02/11 Javascript
js面向对象之实现淘宝放大镜
2020/01/15 Javascript
Vue快速实现通用表单验证的方法
2020/02/24 Javascript
Vue 中 template 有且只能一个 root的原因解析(源码分析)
2020/04/11 Javascript
[00:33]2016完美“圣”典风云人物:Sccc宣传片
2016/12/03 DOTA
python读取oracle函数返回值
2016/07/18 Python
Python对列表中的各项进行关联详解
2017/08/15 Python
定制FileField中的上传文件名称实例
2017/08/23 Python
基于循环神经网络(RNN)的古诗生成器
2018/03/26 Python
解决python3 json数据包含中文的读写问题
2018/05/10 Python
python 扩展print打印文件路径和当前时间信息的实例代码
2019/10/11 Python
Tensorflow训练模型越来越慢的2种解决方案
2020/02/07 Python
tensorflow2.0与tensorflow1.0的性能区别介绍
2020/02/07 Python
python实现从尾到头打印单链表操作示例
2020/02/22 Python
基于python获取本地时间并转换时间戳和日期格式
2020/10/27 Python
详细的大学生创业计划书模板
2014/01/27 职场文书
中学生打架检讨书
2014/02/10 职场文书
劳资协议书范本
2014/04/23 职场文书
人事任命书范本
2015/09/21 职场文书
javascript代码简写的几种常用方式汇总
2021/08/23 Javascript
Golang 切片(Slice)实现增删改查
2022/04/22 Golang