ReplaceQueryString

发表时间:2007-6-25 17:37:00

function ReplaceQueryString(url,paramName,newValue)
{
 var preUrl   = '';
 var paramUrl = '';
 if(url.indexOf('?') != -1)
 {
  if(url.toLowerCase().indexOf(paramName.toLowerCase()) == -1)
  {
   var rtnValue = '';
   if(url.charAt(url.length-1) == '&')
    rtnValue = url + paramName + '=' + newValue;
   else
    rtnValue = url + '&' + paramName + '=' + newValue;
   return rtnValue;
  }
  preUrl   = url.substr(0,url.indexOf('?'));
  paramUrl = url.substr(url.indexOf('?')+1);
 }
 else
 {
  if(url.toLowerCase().indexOf(paramName.toLowerCase()) == -1)
   return url + '?' + paramName + '=' + newValue;
  preUrl = url;
 }

 var arrParams = new Array();
 if(paramUrl != '')
  arrParams = paramUrl.split('&');

 var newParamUrl = '';
 for(var i=0;i<arrParams.length;i++)
 {
  var arrItem = arrParams[i].split('=');
  if(arrItem[0].toLowerCase() == paramName.toLowerCase())
  {
   newParamUrl += (arrItem[0] + '=' + newValue);
  }
  else
  {
   newParamUrl += arrParams[i];
  }
  if(i != arrParams.length -1)
   newParamUrl += '&';
 }
 return preUrl+'?'+newParamUrl;
}

原文地址:https://www.cnblogs.com/yuanxiaoping_21cn_com/p/1446278.html