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 相关文章推荐
javascript学习笔记(二十) 获得和设置元素的特性(属性)
Jun 20 Javascript
从QQ网站中提取的纯JS省市区三级联动菜单
Dec 25 Javascript
jQuery遍历之next()、nextAll()方法使用实例
Nov 08 Javascript
浅谈js停止事件冒泡 阻止浏览器的默认行为(阻止超连接 #)
Feb 08 Javascript
js正则表达式验证密码强度【推荐】
Mar 03 Javascript
使用Node.js实现RESTful API的示例
Aug 01 Javascript
vue-router 权限控制的示例代码
Sep 21 Javascript
Vue使用枚举类型实现HTML下拉框步骤详解
Feb 05 Javascript
JavaScript获取用户所在城市及地理位置
Apr 21 Javascript
node.js使用免费的阿里云ip查询获取ip所在地【推荐】
Sep 03 Javascript
如何测量vue应用运行时的性能
Jun 21 Javascript
Javascript异步流程控制之串行执行详解
Sep 27 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会员权限控制实现原理分析
2011/05/29 PHP
开启PHP的伪静态模式
2015/12/31 PHP
总结一些PHP中好用但又容易忽略的小知识
2017/06/02 PHP
jquery.messager.js插件导致页面抖动的解决方法
2013/07/14 Javascript
Javascript动态引用CSS文件的2种方法介绍
2014/06/06 Javascript
AngularJS iframe跨域打开内容时报错误的解决办法
2015/01/26 Javascript
详解js跨域原理以及2种解决方案
2015/12/09 Javascript
JavaScript学习小结之被嫌弃的eval函数和with语句实例详解
2016/08/01 Javascript
微信小程序 底部导航栏目开发资料
2016/12/05 Javascript
Bootstrap基本插件学习笔记之折叠(22)
2016/12/08 Javascript
js时间戳格式化成日期格式的多种方法介绍
2017/02/16 Javascript
详解angular中的作用域及继承
2017/05/31 Javascript
详谈innerHTML innerText的使用和区别
2017/08/18 Javascript
解决select2在bootstrap modal中不能正常使用的问题
2018/08/09 Javascript
layui prompt 设置允许空白提交的方法
2019/09/24 Javascript
jstree中的checkbox默认选中和隐藏示例代码
2019/12/29 Javascript
jQuery实现获取多选框的值示例
2020/02/07 jQuery
vue将文件/图片批量打包下载zip的教程
2020/10/21 Javascript
通过JS判断网页是否为手机打开
2020/10/28 Javascript
JavaScript实现无限轮播效果
2020/11/19 Javascript
[03:48]显微镜下的DOTA2第四期——TP动作
2014/06/20 DOTA
Python中的闭包总结
2014/09/18 Python
浅谈Python中的作用域规则和闭包
2018/03/20 Python
用Python下载一个网页保存为本地的HTML文件实例
2018/05/21 Python
Python中的list与tuple集合区别解析
2019/10/12 Python
Python判断字符串是否为空和null方法实例
2020/04/26 Python
Python钉钉报警及Zabbix集成钉钉报警的示例代码
2020/08/17 Python
2014年圣诞节倒计时网页的制作过程
2014/12/05 HTML / CSS
指针和引用有什么区别
2013/01/13 面试题
语文教学随笔感言
2014/02/18 职场文书
《掌声》教学反思
2014/02/23 职场文书
奠基仪式主持词
2014/03/20 职场文书
美术兴趣小组活动总结
2014/07/07 职场文书
班组长安全工作职责
2014/07/15 职场文书
2015年销售内勤工作总结
2015/04/27 职场文书
javascript拖曳互换div的位置实现示例
2021/06/28 Javascript