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 相关文章推荐
jQuery 获取对象 定位子对象
May 31 Javascript
Jquery.addClass始终无效原因分析
Sep 08 Javascript
CSS3,HTML5和jQuery搜索框集锦
Dec 02 Javascript
JS实现将Asp.Net的DateTime Json类型转换为标准时间的方法
Aug 02 Javascript
浅谈javascript:两种注释,声明变量,定义函数
Sep 29 Javascript
认识less和webstrom的less配置方法
Aug 02 Javascript
vue如何判断dom的class
Apr 26 Javascript
详解Vue的钩子函数(路由导航守卫、keep-alive、生命周期钩子)
Jul 24 Javascript
Koa 中的错误处理解析
Apr 09 Javascript
轻松解决JavaScript定时器越走越快的问题
May 13 Javascript
vue cli3 配置proxy代理无效的解决
Oct 30 Javascript
解决在Vue中使用axios用form表单出现的问题
Oct 30 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中heredoc的使用方法
2013/06/17 PHP
PHP如何利用P3P实现跨域
2013/08/24 PHP
ThinkPHP框架实现session跨域问题的解决方法
2014/07/01 PHP
PHP读取文件的常见几种方法
2016/11/03 PHP
PHP中关键字interface和implements详解
2017/06/14 PHP
php array 转json及java 转换 json数据格式操作示例
2019/11/13 PHP
php实现简易计算器
2020/08/28 PHP
cloudgamer出品ImageZoom 图片放大效果
2010/04/01 Javascript
JavaScript的类型简单说明
2010/09/03 Javascript
基于原生js淡入淡出函数封装(兼容IE)
2016/10/20 Javascript
javascript按顺序加载运行js方法
2017/12/01 Javascript
简易Vue评论框架的实现(父组件的实现)
2018/01/08 Javascript
vuex+axios+element-ui实现页面请求loading操作示例
2020/02/02 Javascript
jquery实现有过渡效果的tab切换
2020/07/17 jQuery
浅谈vue中使用编辑器vue-quill-editor踩过的坑
2020/08/03 Javascript
Python类的专用方法实例分析
2015/01/09 Python
简单介绍Python2.x版本中的cmp()方法的使用
2015/05/20 Python
python爬虫之百度API调用方法
2017/06/11 Python
Python不使用int()函数把字符串转换为数字的方法
2018/07/09 Python
Win10系统下安装labelme及json文件批量转化方法
2019/07/30 Python
在Mac中PyCharm配置python Anaconda环境过程图解
2020/03/11 Python
django admin 根据choice字段选择的不同来显示不同的页面方式
2020/05/13 Python
Canvas制作的下雨动画的示例
2018/03/06 HTML / CSS
ProBikeKit新西兰:自行车套件,跑步和铁人三项装备
2017/04/05 全球购物
全球第二大家装零售商:Lowe’s
2018/01/13 全球购物
全球最大的房车租赁市场:Outdoorsy
2018/09/19 全球购物
热爱祖国演讲稿
2014/05/04 职场文书
学校师德师风自我剖析材料
2014/09/29 职场文书
党员批评与自我批评发言稿
2014/10/14 职场文书
贪污受贿检讨书范文
2014/11/19 职场文书
优秀共产党员推荐材料
2014/12/18 职场文书
2015年专项整治工作总结
2015/04/03 职场文书
公司行政助理岗位职责
2015/04/11 职场文书
详解用Python把PDF转为Word方法总结
2021/04/27 Python
详解前端任务构建利器Gulp.js使用指南
2021/04/30 Javascript
Pytorch中使用ImageFolder读取数据集时忽略特定文件
2022/03/23 Python