我想通过更改下拉列表来更改整个网址。
$('#year').on('change', function(){
var year = $(this).val();
window.location.href = window.location.href+"?year="+year;
});
我认为,上面的代码每次都应该更改整个URL
。
但是,当我多次执行此操作时,它会开始在当前网址中附加year
。
我需要这样的东西:
example.com?year=2014
example.com?year=2015
现在,我得到了:
example.com?year=2014?year=2015
答案 0 :(得分:0)
我将代码更改为:
$('#year').on('change', function(){
var year = $(this).val();
window.location.href = location.protocol + '//' + location.host + location.pathname+"?year="+year;
OR
window.location.href = location.pathname+"?year="+year;
});
答案 1 :(得分:0)
您可以使用当前地址并使用正则表达式替换:
$('#year').on('change', function(){
var year = $(this).val();
old_href = window.location.href;
new_href = old_href.replace(/(year=)[^\&]+/, '$1' + year);
window.location.href = new_href;
});