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 Memoization 让函数也有记忆功能
Oct 27 Javascript
打印json对象的内容及JSON.stringify函数应用
Mar 29 Javascript
AngularJS入门教程之Hello World!
Dec 06 Javascript
使用JavaScript根据图片获取条形码的方法
Jul 04 Javascript
把JavaScript代码改成ES6语法不完全指南(分享)
Sep 10 Javascript
打字效果动画的4种实现方法(超简单)
Oct 18 Javascript
详解Webpack实战之构建 Electron 应用
Dec 25 Javascript
JS实现的邮箱提示补全效果示例
Jan 30 Javascript
vue鼠标移入添加class样式,鼠标移出去除样式(active)实现方法
Aug 22 Javascript
解决layui的radio属性或别的属性没显示出来的问题
Sep 26 Javascript
jQuery实现轮播图效果demo
Jan 11 jQuery
在vue中使用console.log无效的解决
Aug 09 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
使用Limit参数优化MySQL查询的方法
2008/11/12 PHP
PHP学习笔记之数组篇
2011/06/28 PHP
PHP中通过HTTP_USER_AGENT判断是否为手机移动终端的函数代码
2013/02/14 PHP
PHP遍历目录并返回统计目录大小
2014/06/09 PHP
yii中widget的用法
2014/12/03 PHP
php生成随机颜色方法汇总
2014/12/03 PHP
php中get_cfg_var()和ini_get()的用法及区别
2015/03/04 PHP
Laravel 5框架学习之日期,Mutator 和 Scope
2015/04/08 PHP
Joomla实现组件中弹出一个模式(modal)窗口的方法
2016/05/04 PHP
深入理解JSON数据源格式
2014/01/10 Javascript
jQuery取得设置清空select选择的文本与值
2014/07/08 Javascript
Underscore.js常用方法总结
2015/02/28 Javascript
js简单实现调整网页字体大小的方法
2016/07/23 Javascript
vue2 前后端分离项目ajax跨域session问题解决方法
2017/04/27 Javascript
简单实现js鼠标跟随效果
2020/08/02 Javascript
AngularJS 实现购物车全选反选功能
2017/10/24 Javascript
详解vue中点击空白处隐藏div的实现(用指令实现)
2018/04/19 Javascript
微信小程序自定义轮播图
2018/11/04 Javascript
vue使用一些外部插件及样式的配置代码
2019/11/18 Javascript
jquery实现上传图片功能
2020/06/29 jQuery
浅析Python的Django框架中的Memcached
2015/07/23 Python
Python获取本机所有网卡ip,掩码和广播地址实例代码
2018/01/22 Python
查看Django和flask版本的方法
2018/05/14 Python
python实现对象列表根据某个属性排序的方法详解
2019/06/11 Python
pycharm中显示CSS提示的知识点总结
2019/07/29 Python
Flask框架学习笔记之表单基础介绍与表单提交方式
2019/08/12 Python
让IE9以下版本的浏览器兼容HTML5的方法
2014/03/12 HTML / CSS
北美个性化礼品商店:Things Remembered
2018/06/12 全球购物
Christys’ Hats官网:英国帽子制造商
2018/11/28 全球购物
授权委托书公证
2014/09/14 职场文书
夫妻婚内购房协议书
2014/10/05 职场文书
学习十八届四中全会精神思想汇报
2014/10/23 职场文书
会议通知格式范文
2015/04/15 职场文书
毕业赠语大全
2015/06/23 职场文书
python实现语音常用度量方法的代码详解
2021/05/25 Python
Android开发之底部导航栏的快速实现
2022/04/28 Java/Android