/* 从 URL 字符串中提取变量的值 * Version 2.0 Create by 南极之星([email protected]) */ function GetQueryValue(sQuery,sPan){ if (IsEmpty(sQuery) || IsEmpty(sPan)) return false; if (sQuery.indexOf("?") == 0) sQuery = sQuery.substr(1); if (sQuery.indexOf("&") >= 0){ var aQuery = sQuery.split("&"); var sTempQuery; for (var nTempCount = 0; nTempCount < aQuery.length; nTempCount++){ sTempQuery = aQuery[nTempCount]; if (sTempQuery.indexOf("=") >= 0){ if (sTempQuery.substring(0,sTempQuery.indexOf("=")) == sPan){ return sTempQuery.substr(sTempQuery.indexOf("=") + 1); } }else return false; } return false; }else{ if (sQuery.indexOf("=") >= 0){ if (sQuery.substring(0,sQuery.indexOf("=")) == sPan){ return sQuery.substr(sQuery.indexOf("=") + 1); }else return false; }else return false; } }
上面用到的IsEmpty()函数 /* 检测传入值是否为空值 * Version 3.0 Create by 南极之星([email protected]) */ function IsEmpty(sStr){ var oRE = /^[ \s]*$/; var lRE = oRE.test(sStr); return lRE; }
用法: var nClassID = GetQueryValue(document.location.search,"classid");
再用id=来split成数组就...
function QueryString(sName)
{
var sSource = String(window.document.location);
var sReturn = "";
var sQUS = "?";
var sAMP = "&";
var sEQ = "=";
var iPos; iPos = sSource.indexOf(sQUS); var strQuery = sSource.substr(iPos, sSource.length - iPos);
var strLCQuery = strQuery.toLowerCase();
var strLCName = sName.toLowerCase(); iPos = strLCQuery.indexOf(sQUS + strLCName + sEQ);
if (iPos == -1)
{
iPos = strLCQuery.indexOf(sAMP + strLCName + sEQ);
if (iPos == -1)
return "";
} sReturn = strQuery.substr(iPos + sName.length + 2,strQuery.length-(iPos + sName.length + 2));
var iPosAMP = sReturn.indexOf(sAMP); if (iPosAMP == -1)
return sReturn;
else
{
sReturn = sReturn.substr(0, iPosAMP);
} return sReturn;
}
</script>
<body bgcolor="#0099FF">
输入要进行查找的QueryString名字:
<br><br><input name="qr">
<br><br>
<input type=button onclick="alert(QueryString(qr.value))" value="得到QueryString的值">
var URLParams = new Object() ;
var aParams = document.location.search.substr(1).split('&') ;
for (i=0 ; i < aParams.length ; i++) {
var aParam = aParams[i].split('=') ;
URLParams[aParam[0]] = aParam[1] ;
}
........................
.......................
..................
* Version 2.0 Create by 南极之星([email protected]) */
function GetQueryValue(sQuery,sPan){
if (IsEmpty(sQuery) || IsEmpty(sPan)) return false;
if (sQuery.indexOf("?") == 0) sQuery = sQuery.substr(1);
if (sQuery.indexOf("&") >= 0){
var aQuery = sQuery.split("&");
var sTempQuery;
for (var nTempCount = 0; nTempCount < aQuery.length; nTempCount++){
sTempQuery = aQuery[nTempCount];
if (sTempQuery.indexOf("=") >= 0){
if (sTempQuery.substring(0,sTempQuery.indexOf("=")) == sPan){
return sTempQuery.substr(sTempQuery.indexOf("=") + 1);
}
}else return false;
}
return false;
}else{
if (sQuery.indexOf("=") >= 0){
if (sQuery.substring(0,sQuery.indexOf("=")) == sPan){
return sQuery.substr(sQuery.indexOf("=") + 1);
}else return false;
}else return false;
}
}
/* 检测传入值是否为空值
* Version 3.0 Create by 南极之星([email protected]) */
function IsEmpty(sStr){
var oRE = /^[ \s]*$/;
var lRE = oRE.test(sStr);
return lRE;
}
var nClassID = GetQueryValue(document.location.search,"classid");