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如何给&amp;lt;textarea&amp;gt;&amp;lt;/textarea&amp;gt;赋值
Apr 20 Javascript
JavaScript学习笔记(一) js基本语法
Oct 25 Javascript
json原理分析及实例介绍
Nov 29 Javascript
js简单实现HTML标签Select联动带跳转
Oct 23 Javascript
js防止DIV布局滚动时闪动的解决方法
Oct 30 Javascript
使用VS开发 Node.js指南
Jan 06 Javascript
json定义及jquery操作json的方法
Oct 03 Javascript
用jQuery旋转插件jqueryrotate制作转盘抽奖
Feb 10 Javascript
JavaScript中join()、splice()、slice()和split()函数用法示例
Aug 24 Javascript
vue.extend与vue.component的区别和联系
Sep 19 Javascript
angular6开发steps步骤条组件
Jul 04 Javascript
es6数组之扩展运算符操作实例分析
Apr 25 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读取目录下所有文件的代码
2008/01/07 PHP
PHP读取文件的常见几种方法
2016/11/03 PHP
jQuery的三种$()
2009/12/30 Javascript
关于include标签导致js路径找不到的问题分析及解决
2013/07/09 Javascript
Javascript之this关键字深入解析
2013/11/12 Javascript
基于jquery扩展漂亮的下拉框可以二次修改
2013/11/19 Javascript
JavaScript仿静态分页实现方法
2015/08/04 Javascript
jQuery实现简易的天天爱消除小游戏
2015/10/16 Javascript
直接拿来用的页面跳转进度条JS实现
2016/01/06 Javascript
JS函数arguments数组获得实际传参数个数的实现方法
2016/05/28 Javascript
jQuery 利用$.ajax 时获取原生XMLHttpRequest 对象的方法
2016/08/25 Javascript
基于jquery实现弹幕效果
2016/09/29 Javascript
如何通过非数字与字符的方式实现PHP WebShell详解
2017/07/02 Javascript
Extjs 中的 Treepanel 实现菜单级联选中效果及实例代码
2017/08/22 Javascript
Vue.js 使用v-cloak后仍显示变量的解决方法
2018/11/19 Javascript
如何使用 vue + d3 画一棵树
2018/12/03 Javascript
记录一次开发微信网页分享的步骤
2019/05/07 Javascript
AngularJS动态生成select下拉框的方法实例
2019/11/17 Javascript
微信小程序图片右边加两行文字的代码
2020/04/23 Javascript
javascript+css实现俄罗斯方块小游戏
2020/06/28 Javascript
vue-i18n实现中英文切换的方法
2020/07/06 Javascript
python实现FTP服务器服务的方法
2017/04/11 Python
Python序列循环移位的3种方法推荐
2018/04/09 Python
python处理csv中的空值方法
2018/06/22 Python
在python下使用tensorflow判断是否存在文件夹的实例
2019/06/10 Python
python Elasticsearch索引建立和数据的上传详解
2019/08/04 Python
详解纯CSS3制作的20种loading动效
2017/07/05 HTML / CSS
NYX Professional Makeup英国官网:美国平价专业彩妆品牌
2019/11/13 全球购物
如何利用cmp命令比较文件
2016/04/11 面试题
大学军训感言400字
2014/03/11 职场文书
应届生求职自荐信范文
2014/04/07 职场文书
护士工作失误检讨书
2014/09/14 职场文书
青年岗位能手事迹材料
2014/12/23 职场文书
悬空寺导游词
2015/02/05 职场文书
党员违纪检讨书
2015/05/05 职场文书
终止合同协议书范本
2016/03/22 职场文书