zl程序教程

您现在的位置是:首页 >  前端

当前栏目

javascript获取url参数和script标签中获取url参数函数代码

JavaScript代码 函数 获取 参数 标签 url script
2023-06-13 09:14:15 时间
urlparamter:
复制代码代码如下:

//lastest:
vargetArgs=function(){//geturlquerystring
varparams=document.location.search,reg=/(?:^\?|&)(.*?)=(.*?)(?=&|$)/g,temp,args={};
while((temp=reg.exec(params))!=null)args[temp[1]]=decodeURIComponent(temp[2]);
returnargs;
};
//只取一个:
varqueryString=function(key){
return(document.location.search.match(newRegExp("(?:^\\?|&)"+key+"=(.*?)(?=&|$)"))||["",null])[1];
}
varargs=getArgs();
alert(args.name+"|"+args.sex+"|"+args.age);
//测试链接:<ahref="?name=abc&sex=男&age=12">testgetQueryString</a>




scriptparamter:
复制代码代码如下:

vargetScriptArgs=function(){//获取多个参数
varscripts=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]);
returnres;
};
varargs=getScriptArgs();
alert(args.a+"|"+args.b+"|"+args.c);
//假如上面的js是在这个js1.js的脚本中<scripttype="text/javascript"src="js1.js?a=abc&b=汉字&c=123"></script>

vargetScriptArg=function(key){//获取单个参数
varscripts=document.getElementsByTagName("script"),
script=scripts[scripts.length-1],
src=script.src;
return(src.match(newRegExp("(?:\\?|&)"+key+"=(.*?)(?=&|$)"))||["",null])[1];
};
alert(getScriptArg("c"));

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