|
本帖最后由 追影 于 2014-10-23 16:29 编辑
- function changeURLPar(url, para, val)
- {
- var _index = url.lastIndexOf("?");
- if (_index > 0)
- {
- if (_index < (url.length - 1))//?号不是最后字符
- {
- var _value = getparmByUrl(url,para);
- if (_value != "")//路径已经有该参数
- url = setParaValue(url, para, val);//修改参数
- else
- url += "&" + para + "=" + val;
- }
- else
- url += para + "=" + val;
- }
- else
- url += "?" + para + "=" + val;
-
- return url;
- }
-
- //获取url参数
- function getparmByUrl(url,parmName) {
- /* var url = window.location.toString();
- alert(url);
- */
- var arr = url.split("?");
- var parms = arr[1];
- var parmList = parms.split("&");
- var parmTemp;
- for (var i = 0; i < parmList.length; i++) {
- parmTemp = parmList[i].split("=");
- if (parmTemp[0] == parmName)//存在该参数
- return parmTemp[1];
- }
- return ""
- }
-
- //修改url中某参数的值
- function setParaValue(url, parama, val)
- {
- var strOne, strTwo, result;
- var index = url.lastIndexOf(parama);
- strOne = url.substr(0, index);//获取参数前面部分
- strTwo = url.substr((index + 1));
- var twoIndex = strTwo.lastIndexOf("&");//判断参数后面是否还有其他参数
- if (twoIndex > 0)
- strTwo = strTwo.substr(twoIndex);//获取后面参数包含"&"
- else
- strTwo = "";
-
- result = strOne + parama + "=" + val + strTwo;
- return result;
- }
复制代码
调用方法:
//当前完整URL
var url = "<php>echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];</php>";
var t = changeURLPar(url,'keyword','大米CMS');
location.href = t;
|
|