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 相关文章推荐
Extjs中TabPane如何嵌套在其他网页中实现思路及代码
Jan 27 Javascript
jQuery写fadeTo示例代码
Feb 21 Javascript
js操作IE浏览器弹出浏览文件夹可以返回目录路径
Jul 14 Javascript
Jquery实现遮罩层的方法
Jun 08 Javascript
高性能JavaScript DOM编程(1)
Aug 11 Javascript
浅谈vue实现数据监听的函数 Object.defineProperty
Jun 08 Javascript
JS设置手机验证码60s等待实现代码
Jun 14 Javascript
JS时间控制实现动态效果的实例讲解
Jul 31 Javascript
Vue2.0父子组件传递函数的教程详解
Oct 16 Javascript
基于JavaScript中标识符的命名规则介绍
Jan 06 Javascript
Vue.js子组件向父组件通信的方法实例代码详解
Dec 10 Javascript
vue使用canvas实现移动端手写签名
Sep 22 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 include的妙用,实现路径加密
2008/07/29 PHP
PHP判断字符串长度的两种方法很实用
2015/09/22 PHP
PHP开发中常用的十个代码样例
2016/02/02 PHP
PHP简单检测网址是否能够正常打开的方法
2016/09/04 PHP
Yii框架结合sphinx,Ajax实现搜索分页功能示例
2016/10/18 PHP
avalonjs实现仿微博的图片拖动特效
2015/05/06 Javascript
深入理解JavaScript 函数
2016/06/06 Javascript
JS 实现计算器详解及实例代码(一)
2017/01/08 Javascript
tablesorter.js表格排序使用方法(支持中文排序)
2017/02/10 Javascript
bootstrap table 数据表格行内修改的实现代码
2017/02/13 Javascript
vue-quill-editor实现图片上传功能
2017/08/08 Javascript
jQuery+CSS实现的table表格行列转置功能示例
2018/01/08 jQuery
微信小程序登录换取token的教程
2018/05/31 Javascript
jquery树形插件zTree高级使用详解
2019/08/16 jQuery
[03:46]显微镜下的DOTA2第七期——满血与残血
2014/06/20 DOTA
python进程管理工具supervisor使用实例
2014/09/17 Python
CentOS 7下Python 2.7升级至Python3.6.1的实战教程
2017/07/06 Python
详解Python中的type和object
2018/08/15 Python
解决python 上传图片限制格式问题
2019/10/30 Python
pytorch1.0中torch.nn.Conv2d用法详解
2020/01/10 Python
Python语法之精妙的十个知识点(装B语法)
2020/01/18 Python
Django与pyecharts结合的实例代码
2020/05/13 Python
Python爬取YY评级分数并保存数据实现过程解析
2020/06/01 Python
一个基于canvas的移动端图片编辑器的实现
2020/10/28 HTML / CSS
elf彩妆英国官网:e.l.f. Cosmetics英国(美国平价彩妆品牌)
2017/11/02 全球购物
Under Armour安德玛英国官网:美国高端运动科技品牌
2018/09/17 全球购物
高三毕业生自我鉴定
2013/12/20 职场文书
销售岗位职责范本
2014/06/12 职场文书
本科生求职信
2014/06/17 职场文书
本科毕业生应聘自荐信范文
2014/06/26 职场文书
珠宝的促销活动方案
2014/08/31 职场文书
2014年小学德育工作总结
2014/12/05 职场文书
个人先进材料范文
2014/12/30 职场文书
个人年终总结范文
2015/03/09 职场文书
2015秋季开学演讲稿范文
2015/07/16 职场文书
MySQL 不等于的三种使用及区别
2021/06/03 MySQL