就像

?a=1&b=2&c=3

我只想改变b=6,同时保持其他东西不变,怎么做?

最佳答案

这里有一个小函数:

jQuery.replaceURLParam = function (oldURL, replaceParam, newVal) {
var iStart = oldURL .indexOf(replaceParam  + '=');
var iEnd = oldURL .substring(iStart + 1).indexOf('&');
var sEnd = oldURL .substring(iStart + iEnd + 1);
var sStart = oldURL .substring(0, iStart);

var newURl = sStart + replaceParam + '=' + newVal;

if (iEnd > 0) {
    newURl += sEnd;
}

return newURl;

}
document.body.innerHTML=jQuery.replaceURLParam('www.foo.com?a=1&b=2&c=3’,‘b’,6);
演示:http://jsfiddle.net/3rkrn/

09-20 05:47