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的开源工具PACKER2.0.2
Nov 04 Javascript
jquery easyui combobox模糊过滤(示例代码)
Nov 30 Javascript
jQuery插件扩展测试实例
Jun 21 Javascript
jquery——九宫格大转盘抽奖实例
Jan 16 Javascript
微信小程序 devtool隐藏的秘密
Jan 21 Javascript
JavaScript数据结构之二叉树的查找算法示例
Apr 13 Javascript
Vue2.0用户权限控制解决方案
Nov 29 Javascript
Vue.js 中取得后台原生HTML字符串 原样显示问题的解决方法
Jun 10 Javascript
Vue设置长时间未操作登录自动到期返回登录页
Jan 22 Javascript
vue中利用iscroll.js解决pc端滚动问题
Feb 15 Javascript
Threejs实现滴滴官网首页地球动画功能
Jul 13 Javascript
Vue项目中使用mock.js的完整步骤
Jan 12 Vue.js
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
DC动画很好看?新作烂得令人发指,名叫《红色之子》
2020/04/09 欧美动漫
PHP-redis中文文档介绍
2013/02/07 PHP
php计算两个整数的最大公约数常用算法小结
2015/03/05 PHP
js文件中调用js的实现方法小结
2009/10/23 Javascript
javascript 模拟JQuery的Ready方法实现并出现的问题
2009/12/06 Javascript
监控 url fragment变化的js代码
2010/04/19 Javascript
editable.js 基于jquery的表格的编辑插件
2011/10/24 Javascript
Javascript查询DBpedia小应用实例学习
2013/03/07 Javascript
基于NodeJS的前后端分离的思考与实践(四)安全问题解决方案
2014/09/26 NodeJs
jQuery创建自定义的选择器用以选择高度大于100的超链接实例
2015/03/18 Javascript
jquery获取复选框的值的简单实例
2016/05/26 Javascript
AngularJS入门教程之静态模板详解
2016/08/18 Javascript
值得学习的bootstrap fileinput文件上传工具
2016/11/08 Javascript
javaScript中定义类或对象的五种方式总结
2016/12/04 Javascript
angular forEach方法遍历源码解读
2017/01/25 Javascript
关于webpack2和模块打包的新手指南(小结)
2017/08/07 Javascript
React中上传图片到七牛的示例代码
2017/10/10 Javascript
实例分析JS与Node.js中的事件循环
2017/12/12 Javascript
浅谈vuepress 踩坑记
2018/04/18 Javascript
微信小程序实现美团菜单
2018/06/06 Javascript
详解离线安装npm包的几种方法
2018/11/25 Javascript
Vue实现购物车的全选、单选、显示商品价格代码实例
2019/05/06 Javascript
举例讲解Python中的身份运算符的使用方法
2015/10/13 Python
django model去掉unique_together报错的解决方案
2016/10/18 Python
Python判断对象是否相等及eq函数的讲解
2019/02/25 Python
使用Python和Scribus创建一个RGB立方体的方法
2019/07/17 Python
python PyAutoGUI 模拟鼠标键盘操作和截屏功能
2019/08/04 Python
TensorBoard 计算图的可视化实现
2020/02/15 Python
python安装后的目录在哪里
2020/06/21 Python
中国最大的潮流商品购物网站:YOHO!BUY有货
2017/01/07 全球购物
Skyscanner波兰:廉价航班
2017/11/07 全球购物
英国最大的LED专业零售商:Led Hut
2018/03/16 全球购物
环保倡议书格式范文
2014/05/14 职场文书
电教室标语
2014/06/20 职场文书
Golang中channel的原理解读(推荐)
2021/10/16 Golang
GO中sync包自由控制并发示例详解
2022/08/05 Golang