Я создаю фильтр на основе размера, цвета и т. Д. c. Так что можно выбрать несколько предметов. Когда я нажимаю на каждый элемент, он должен добавляться к текущему URL. Пожалуйста, проверьте ниже URL,
If parameter not exists in URL
http://example.com/category-3?tracker=Q2F0ZWdvcnkgMw&color=White
If parameter exists and selected same color
http://example.com/category-3?tracker=Q2F0ZWdvcnkgMw&color=White
If parameter exists and selected multiple colors
http://example.com/category-3?tracker=Q2F0ZWdvcnkgMw&color=White-Black
Как реализовать то же самое, используя jQuery. Я попытался использовать приведенный ниже код,
function setGetParameter(paramName, paramValue) {
var url = window.location.href;
var hash = location.hash;
url = url.replace(hash, '');
if (url.indexOf(paramName + "=") >= 0) {
var prefix = url.substring(0, url.indexOf(paramName + "="));
var suffix = url.substring(url.indexOf(paramName + "="));
suffix = suffix.substring(suffix.indexOf("=") + 1);
suffix = (suffix.indexOf("&") >= 0) ? suffix.substring(suffix.indexOf("&")) : "";
url = prefix + paramName + "=" + paramValue + suffix + "-";
} else {
if (url.indexOf("?") < 0)
url += "?" + paramName + "=" + paramValue + "-";
else
url += "&" + paramName + "=" + paramValue + "-";
}
window.location.href = url + hash;
}
Приведенный выше код работает с одним значением параметра. Для нескольких значений, как изменить вышеуказанный код.