通过javascript在URL中获取参数
发布网友
发布时间:2022-04-22 06:41
我来回答
共5个回答
热心网友
时间:2022-04-22 14:09
给你一个通用函数(支持IE和FF)
例如 a.htm?ID=12&str=aaaa
<script language="JavaScript" type="text/javascript">
function QueryString()
{
var name,value,i;
var str=location.href;
var num=str.indexOf("?")
str=str.substr(num+1);
var arrtmp=str.split("&");
for(i=0;i < arrtmp.length;i++){
num=arrtmp[i].indexOf("=");
if(num>0){
name=arrtmp[i].substring(0,num);
value=arrtmp[i].substr(num+1);
this[name]=value;
}
}
}
//--------------------------------------
//调用:
var Request=new QueryString();
ID=Request["ID"]
str=Request["str"]
document.write(ID+"<br>"+str);
</script>
输出结果为:
12
aaaa
热心网友
时间:2022-04-22 15:27
/**
* 获取 URL 参数
* @param {String} name 参数名
* @return URL 的参数值 如果不存在,返回 null
* @type String
*/
var getParam = function( name ) {
var params = localhost.href.search.substr( 1 ).toLowerCase(); // 返回 "?" 后的全部小写参数
var paramList = []; // http://www.javask.cn/index.html?id=2&cid=3
var param = null;
var parami;
if( params.length > 0 ) {
if( params.indexOf( "&" ) >= 0 ) {
paramList = params.split( "&" ); // 如果参数组里包含不只一个参数,则将每个参数切割保存在数组
}else {
paramList[ 0 ] = params; // 如果参数组里只有一个参数,则将这个参数赋值给数组的第一位
}
for( var i = 0 , listLength = paramList.length; i < listLength; i ++ ) {
parami = paramList[ i ].indexOf( name + "=" );
if( parami >= 0 ) {
param = paramList[ i ].substr( parami + ( name + "=" ).length );
}
}
}
return param;
};
或
Object.isNull = function( a ) {return typeof a == "object" && !a;};
var $P = function( name ) {
return Object.isNull( localhost.href.match( new RegExp( "[?#&]" + name + "=(.*?)(?:[#&]|$)" , "i" ) ) ) ? "" : RegExp.$1;
};
参考资料:自己
热心网友
时间:2022-04-22 17:02
<script type="text/javascript">
/*
* 获取URL参数 getURLQuery(tp)
* 例如 URL = http://www.xyz.com/index.html?x=1&y=2
* 则 getURLQuery()或getURLQuery(0) 输出一个hash数组{x:'1',y:'2'}
* 而 getURLQuery(1) 输出参数个数 2
*/
function getURLQuery(tp){
var _s = window.location.search;
if(typeof _s!=undefined && _s!='' && _s!='?'){
_s = _s.split('?')[1];
var _o = [];
var _p = _s.split('&');
for(var i=0;i<_p.length;i++){
_o[_p[i].split('=')[0]] = _p[i].split('=')[1];
}
if(typeof tp==undefined || tp==0){
return _o;
}else if(tp==1){
return _p.length;
}
}
}
//调用
var URLQuery = getURLQuery();
var URLQueryNum = getURLQuery(1);
//输出
alert(URLQuery.x);
alert(URLQuery.y);
alert(URLQuery.z);
alert(URLQueryNum);
</script>
未测试!!!
热心网友
时间:2022-04-22 18:53
<script language="JavaScript" type="text/javascript">
var pos,str,para,parastr;
str = location.href;
parastr = str.split("?")[1];
document.write(parastr);
</script>
//关键是str = location.href; 火狐下不能用window.location
参考资料:自己
热心网友
时间:2022-04-22 21:01
没有问题的。呵呵。