热门:网页模板.net视频教程JQueryMVCjsonExtJs源码示例三级联动JQuery菜单
您现在的位置:.Net中文社区>> AJAX编程>>正文内容

javascript获取url参数和script标签中获取url参数

发布时间:2010年02月01日点击数: 佚名

url paramter:

  1. //lastest: 
  2. var getArgs=function() {//get url querystring 
  3.     var params=document.location.search,reg=/(?:^\?|&)(.*?)=(.*?)(?=&|$)/g,temp,args={}; 
  4.     while((temp=reg.exec(params))!=null) args[temp[1]]=decodeURIComponent(temp[2]); 
  5.     return args; 
  6. }; 
  7. //只取一个: 
  8. var queryString=function(key){ 
  9.     return (document.location.search.match(new RegExp("(?:^\\?|&)"+key+"=(.*?)(?=&|$)"))||['',null])[1]; 
  10. var args=getArgs(); 
  11. alert(args.name+" | "+args.sex+" | "+args.age); 
  12. //测试链接:<a href="?name=abc&sex=男&age=12">test getQueryString</a> 

script paramter:

  1. var getScriptArgs=function(){//获取多个参数 
  2.     var scripts=document.getElementsByTagName("script"), 
  3.     script=scripts[scripts.length-1],//因为当前dom加载时后面的script标签还未加载,所以最后一个就是当前的script 
  4.     src=script.src, 
  5.     reg=/(?:\?|&)(.*?)=(.*?)(?=&|$)/g, 
  6.     temp,res={}; 
  7.     while((temp=reg.exec(src))!=null) res[temp[1]]=decodeURIComponent(temp[2]); 
  8.     return res; 
  9. }; 
  10. var args=getScriptArgs(); 
  11. alert(args.a+" | "+args.b+" | "+args.c); 
  12. //假如上面的js是在这个js1.js的脚本中<script type="text/javascript" src="js1.js?a=abc&b=汉字&c=123"></script> 
  13.  
  14. var getScriptArg=function(key){//获取单个参数 
  15.     var scripts=document.getElementsByTagName("script"), 
  16.     script=scripts[scripts.length-1], 
  17.     src=script.src; 
  18.     return (src.match(new RegExp("(?:\\?|&)"+key+"=(.*?)(?=&|$)"))||['',null])[1]; 
  19. }; 
  20. alert(getScriptArg("c")); 

注:不要在方法中调用方法,否则可能始终获取的是最后一个js的文件的参数,要在方法中使用,请先用变量保存,在方法中直接获取

本站热点业务

更多模板/案例展示

关于我们 | 联系我们 | 团队日志 | 网站地图 | 网站合作