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

本文详细介绍了如何通过JavaScript获取URL参数和脚本参数,并提供了具体代码示例,帮助开发者理解并应用这些技术。

url paramter:

?
Code highlighting produced by Actipro CodeHighlighter (freeware)http: //www.CodeHighlighter.com/-->//lastest:
var queryStrings= 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的文件的参数,要在方法中使用,请先放到js加载时就会执行的变量中 保存

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值