我想用另一个参数替换一个动态url查询参数。我想用jquery替换一个url查询参数
例如,就像我的网址是:
我想以后
&sc_cmp=pcp_GSF_Batteries+%26+Electrical+Accessories_209-0539
取代一切开始,并添加类似&新的静态字符串
我最后的网址看起来应该像:
http://www.mysite.com/209-0539.prd?pageLevel=&skuId=111-4567&新的静态字符串。
感谢
我想用另一个参数替换一个动态url查询参数。我想用jquery替换一个url查询参数
例如,就像我的网址是:
我想以后
&sc_cmp=pcp_GSF_Batteries+%26+Electrical+Accessories_209-0539
取代一切开始,并添加类似&新的静态字符串
我最后的网址看起来应该像:
http://www.mysite.com/209-0539.prd?pageLevel=&skuId=111-4567&新的静态字符串。
感谢
如果你不希望包括其他库,下面,您可以添加你想要移除尽可能多的搜索项,并添加像你一样没有很多很多的代码
/* array of search keys to remove*/
var removeSearch = ['sc_cmp'];
/* array of new search items*/
var newSearchitem = ['image=cool'];
var url = location.href;
var pageUrl = url.split('?')[0];
var urlSearch = url.split('?')[1].split('&');
/* store search items in array */
var newSearchArr = [];
/* loop over exisiting search items and store keepers*/
for (i = 0; i < urlSearch.length; i++) {
var key = urlSearch[i].split('=')[0];
if ($.inArray(key, removeSearch) == -1) {
newSearchArr.push(urlSearch[i])
}
}
$.merge(newSearchArr, newSearchitem);
var newUrl = pageUrl + '?' + newSearchArr.join('&')
我建议你使用酷URI.js库,那么它的那么容易,因为:
var url = "http://www.mysite.com/209-0539.prd?pageLevel=&skuId=111-4567&sc_cmp=pcp_GSF_Batteries+%26+Electrical+Accessories_209-0539";
url = URI(url).removeSearch("sc_cmp").addSearch("newvar","newval");
// http://www.mysite.com/209-0539.prd?pageLevel=&skuId=111-4567&newvar=newval
alert(url);
见工作demo。
+1这是一个不错的图书馆。 – insertusernamehere
请问这有帮助吗? http://stackoverflow.com/a/10235376/733347 –
你应该先告诉我们你到目前为止所尝试过的。它也将帮助您了解更多 – Luca