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 相关文章推荐
破除网页鼠标右键被禁用的绝招大全
Dec 27 Javascript
jQuery 全选效果实现代码
Mar 23 Javascript
Javascript MVC框架Backbone.js详解
Sep 18 Javascript
noty ? jQuery通知插件全面解析
May 18 Javascript
jQuery利用sort对DOM元素进行排序操作
Nov 07 Javascript
vue-cli 构建骨架屏的方法示例
Nov 08 Javascript
使用JavaScrip模拟实现仿京东搜索框功能
Oct 16 Javascript
Vue 中 filter 与 computed 的区别与用法解析
Nov 21 Javascript
Angular8引入百度Echarts进行图表分析的实现代码
Nov 27 Javascript
JS canvas实现画板和签字板功能
Feb 23 Javascript
处理canvas绘制图片模糊问题
May 11 Javascript
JavaScript实现音乐播放器
Aug 14 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学习之流程控制实现代码
2011/06/09 PHP
PHP下判断网址是否有效的代码
2011/10/08 PHP
PHP读取xml方法介绍
2013/01/12 PHP
PHP中使用memcache存储session的三种配置方法
2014/04/05 PHP
PHP中new static()与new self()的区别异同分析
2014/08/22 PHP
php建立Ftp连接的方法
2015/03/07 PHP
PHP多维数组排序array详解
2017/11/21 PHP
Javascript的数组与字典用法与遍历对象的属性技巧
2012/11/07 Javascript
使用jQuery.fn自定义jQuery翻页插件
2013/01/20 Javascript
js弹出层永远居中实现思路及代码
2013/11/29 Javascript
jquery跟js初始化加载的多种方法及区别介绍
2014/04/02 Javascript
js和jq使用submit方法无法提交表单的快速解决方法
2016/05/17 Javascript
javascript创建含数字字母的随机字符串方法总结
2016/08/01 Javascript
Bootstrap table使用方法详细介绍
2016/12/09 Javascript
详解如何在Angular优雅编写HTTP请求
2018/12/05 Javascript
node之本地服务器图片上传的方法示例
2019/03/26 Javascript
vue-i18n实现中英文切换的方法
2020/07/06 Javascript
基于javascript原生判断DOM是否加载完毕
2020/10/14 Javascript
python操作摄像头截图实现远程监控的例子
2014/03/25 Python
python实现模拟按键,自动翻页看u17漫画
2015/03/17 Python
Flask框架的学习指南之开发环境搭建
2016/11/20 Python
Python编程图形库之Pillow使用方法讲解
2018/12/28 Python
python使用Plotly绘图工具绘制散点图、线形图
2019/04/02 Python
PyQt5实现让QScrollArea支持鼠标拖动的操作方法
2019/06/19 Python
Django Rest framework解析器和渲染器详解
2019/07/25 Python
编码转换,怎样实现将GB2312编码的字符串转换为ISO-8859-1编码的字符串
2014/01/07 面试题
编辑找工作求职信范文
2013/12/16 职场文书
咖啡蛋糕店创业计划书
2014/01/28 职场文书
校园文化建设方案
2014/02/03 职场文书
管理岗位竞聘演讲稿
2014/08/18 职场文书
领导干部四风问题自我剖析材料
2014/09/25 职场文书
反对四风自我剖析材料
2014/10/07 职场文书
2014年小学图书室工作总结
2014/12/09 职场文书
道歉情书大全
2015/05/12 职场文书
创业计划书之零食店(进口)
2019/09/24 职场文书
面试中canvas绘制图片模糊图片问题处理
2022/03/13 Javascript