javascript 获取url参数和script标签中获取url参数函数代码


Posted in Javascript onJanuary 22, 2010

url paramter:

//lastest: 
var getArgs=function() {//get url querystring 
var params=document.location.search,reg=/(?:^\?|&)(.*?)=(.*?)(?=&|$)/g,temp,args={}; 
while((temp=reg.exec(params))!=null) args[temp[1]]=decodeURIComponent(temp[2]); 
return args; 
}; 
//只取一个: 
var queryString=function(key){ 
return (document.location.search.match(new RegExp("(?:^\\?|&)"+key+"=(.*?)(?=&|$)"))||['',null])[1]; 
} 
var args=getArgs(); 
alert(args.name+" | "+args.sex+" | "+args.age); 
//测试链接:<a href="?name=abc&sex=男&age=12">test getQueryString</a>

script paramter:

var getScriptArgs=function(){//获取多个参数 
var scripts=document.getElementsByTagName("script"), 
script=scripts[scripts.length-1],//因为当前dom加载时后面的script标签还未加载,所以最后一个就是当前的script 
src=script.src, 
reg=/(?:\?|&)(.*?)=(.*?)(?=&|$)/g, 
temp,res={}; 
while((temp=reg.exec(src))!=null) res[temp[1]]=decodeURIComponent(temp[2]); 
return res; 
}; 
var args=getScriptArgs(); 
alert(args.a+" | "+args.b+" | "+args.c); 
//假如上面的js是在这个js1.js的脚本中<script type="text/javascript" src="js1.js?a=abc&b=汉字&c=123"></script> var getScriptArg=function(key){//获取单个参数 
var scripts=document.getElementsByTagName("script"), 
script=scripts[scripts.length-1], 
src=script.src; 
return (src.match(new RegExp("(?:\\?|&)"+key+"=(.*?)(?=&|$)"))||['',null])[1]; 
}; 
alert(getScriptArg("c"));

ps:不要在方法中调用方法,否则可能始终获取的是最后一个js的文件的参数,要在方法中使用,请先用变量保存,在方法中直接获取
Javascript 相关文章推荐
javascript removeChild 使用注意事项
Apr 11 Javascript
JSQL 基于客户端的成绩统计实现方法
May 05 Javascript
JavaScript字符串String和Array操作的有趣方法
Dec 18 Javascript
javascript处理a标签超链接默认事件的方法
Jun 29 Javascript
jquery实现简易的移动端验证表单
Nov 08 Javascript
JavaScript中解决多浏览器兼容性23个问题的快速解决方法
May 19 Javascript
js return返回多个值,通过对象的属性访问方法
Feb 21 Javascript
js实现分页功能
May 24 Javascript
利用jQuery+localStorage实现一个简易的计时器示例代码
Dec 25 jQuery
element ui table 增加筛选的方法示例
Nov 02 Javascript
js实现坦克移动小游戏
Oct 28 Javascript
ES6函数实现排它两种写法解析
May 13 Javascript
JavaScript 学习笔记(十三)Dom创建表格
Jan 21 #Javascript
JavaScript 学习笔记(十二) dom
Jan 21 #Javascript
javascript parseInt与Number函数的区别
Jan 21 #Javascript
js parsefloat parseint 转换函数
Jan 21 #Javascript
jquery 防止表单重复提交代码
Jan 21 #Javascript
javascript 哈希表(hashtable)的简单实现
Jan 20 #Javascript
JS 对象介绍
Jan 20 #Javascript
You might like
PHP程序员最常犯的11个MySQL错误小结
2010/11/20 PHP
PHP计算一年多少个星期和每周的开始和结束日期
2014/07/01 PHP
php遍历删除整个目录及文件的方法
2015/03/13 PHP
EXTjs4.0的store的findRecord的BUG演示代码
2013/06/08 Javascript
JavaScript二维数组实现的省市联动菜单
2014/05/08 Javascript
confirm的用法示例用于按钮操作时确定是否执行
2014/06/19 Javascript
jQuery+css实现的换页标签栏效果
2016/01/27 Javascript
jQuery限制图片大小的方法
2016/05/25 Javascript
浅谈JavaScript正则表达式-非捕获性分组
2017/03/08 Javascript
vue获取input输入值的问题解决办法
2017/10/17 Javascript
Vue 中对图片地址进行拼接的方法
2018/09/03 Javascript
微信小程序CSS3动画下拉菜单效果
2018/11/04 Javascript
JavaScript使用小插件实现倒计时的方法讲解
2019/03/11 Javascript
解决 viewer.js 动态更新图片导致无法预览的问题
2019/05/14 Javascript
JavaScript构造函数原理及实现流程解析
2020/11/19 Javascript
[05:41]2014DOTA2西雅图国际邀请赛 小组赛7月10日TOPPLAY
2014/07/10 DOTA
python 判断一个进程是否存在
2009/04/09 Python
Python实现感知机(PLA)算法
2017/12/20 Python
tensorflow建立一个简单的神经网络的方法
2018/02/10 Python
python+pandas生成指定日期和重采样的方法
2018/04/11 Python
python实战串口助手_解决8串口多个发送的问题
2019/06/12 Python
Numpy中对向量、矩阵的使用详解
2019/10/29 Python
Python3使用xlrd、xlwt处理Excel方法数据
2020/02/28 Python
Python多个装饰器的调用顺序实例解析
2020/05/22 Python
keras做CNN的训练误差loss的下降操作
2020/06/22 Python
解决CSS3的opacity属性带来的层叠顺序问题
2016/05/09 HTML / CSS
详解background属性的8个属性值(面试题)
2020/11/02 HTML / CSS
html5 canvas 使用示例
2010/10/22 HTML / CSS
专科应届生求职信
2013/11/24 职场文书
父母对孩子说的话
2014/04/12 职场文书
《中国梦我的梦》大学生演讲稿
2014/08/20 职场文书
竞选学习委员演讲稿
2014/09/01 职场文书
观后感的写法
2015/06/19 职场文书
麦田里的守望者读书笔记
2015/06/30 职场文书
2015新教师教学工作总结
2015/07/22 职场文书
Go结合Gin导出Mysql数据到Excel表格
2022/08/05 Golang