我正在尝试创建用于产品过滤的网址。 我需要的网址是www.example.com/category/?brand=apple|windows
如果参数(品牌)存在,则用分隔符|添加给定值。 如果该值已经存在,则不执行任何操作。
还具有多个参数,可以找到是否需要添加?。或&。
我尝试了一些教程,但是找不到任何解决方案。
答案 0 :(得分:0)
您可以重建所有请求。
var filters = {
brand : ['apple', 'windows'],
color: ['black', 'white']
};
var getFilterURL = function(_filters){
var keys = Object.keys(_filters);
var loc = location.pathname;
var params = "";
for(var i =0; i < keys.length; i++){
if(_filters[keys[i]].length > 0){
params += "&" + keys[i] + "=" + _filters[keys[i]].join('|')
}
}
if(params != ""){
loc += "?" + params.substring(1);
}
return loc;
}
console.log(getFilterURL(filters));