js操作url参数,直接拿去用吧.
function getQueStr(url, ref) //取获参数值
{
var str = url.substr(url.indexOf('?') + 1);
if (str.indexOf('&') != -1) {
var arr = str.split('&');
for (i in arr) {
if (arr[i].split('=')[0] == ref)
return arr[i].split('=')[1];
}
}
else {
return url.substr(url.indexOf('=') + 1)
}
}
function setQueStr(url, ref, value) //设置参数值
{
var str = "";
if (url.indexOf('?') != -1)
str = url.substr(url.indexOf('?') + 1);
else
return url + "?" + ref + "=" + value;
var returnurl = "";
var setparam = "";
var arr;
var modify = "0";
if (str.indexOf('&') != -1) {
arr = str.split('&');
for (i in arr) {
if (arr[i].split('=')[0] == ref) {
setparam = value;
modify = "1";
}
else {
setparam = arr[i].split('=')[1];
}
returnurl = returnurl + arr[i].split('=')[0] + "=" + setparam + "&";
}
returnurl = returnurl.substr(0, returnurl.length - 1);
if (modify == "0")
if (returnurl == str)
returnurl = returnurl + "&" + ref + "=" + value;
}
else {
if (str.indexOf('=') != -1) {
arr = str.split('=');
if (arr[0] == ref) {
setparam = value;
modify = "1";
}
else {
setparam = arr[1];
}
returnurl = arr[0] + "=" + setparam;
if (modify == "0")
if (returnurl == str)
returnurl = returnurl + "&" + ref + "=" + value;
}
else
returnurl = ref + "=" + value;
}
return url.substr(0, url.indexOf('?')) + "?" + returnurl;
}
function delQueStr(url, ref) //删除参数值
{
var str = "";
if (url.indexOf('?') != -1)
str = url.substr(url.indexOf('?') + 1);
else
return url;
var arr = "";
var returnurl = "";
var setparam = "";
if (str.indexOf('&') != -1) {
arr = str.split('&');
for (i in arr) {
if (arr[i].split('=')[0] != ref) {
returnurl = returnurl + arr[i].split('=')[0] + "=" + arr[i].split('=')[1] + "&";
}
}
return url.substr(0, url.indexOf('?')) + "?" + returnurl.substr(0, returnurl.length - 1);
}
else {
arr = str.split('=');
if (arr[0] == ref)
return url.substr(0, url.indexOf('?'));
else
return url;
}
}
s = Regex.Replace(s, @"&?name=[^&]+", String.Empty).TrimEnd('?');
/// <summary>
/// 功能:清除Url中的参数
/// </summary>
/// <param name="url">链接地址</param>
/// <param name="paraName">参数名</param>
/// <returns>替换后的链接地址</returns>
public string TrimPara(string url,string paraName)
{
string str = Request.Url.AbsoluteUri;
//使用正则匹配所要查找的Key
Regex reg = new Regex(string.Format("{0}=[^&]*", "a"), RegexOptions.IgnoreCase);
Regex reg1 = new Regex("[&]{2,}", RegexOptions.IgnoreCase);
//将旧值替换为空
string newUrl = reg.Replace(str, "");
//将新值替换到Url中
newUrl = reg1.Replace(newUrl, "&");
//将多余的&字符清除
return newUrl.Replace("?&", "?");
}