我有这段代码:
if($('#category').val() == 4){
console.log("http://"+window.location.hostname+'/dailyGift?id_event='+$( "#sub-category" ).val()+'?week_id='+$('#week_id').val()+'?year_id='+$('#year_id').val());
window.location = "http://"+window.location.hostname+'/dailyGift?id_event='+$( "#sub-category" ).val()+'?week_id='+$('#week_id').val()+'?year_id='+$('#year_id').val();
}
在控制台中我有
http://myWebsite.dev/dailyGift?id_event=41?week_id=44?year_id=2016.
当我直接访问时没有问题。但jquery没有进行此重定向,我不明白问题在哪里
答案 0 :(得分:4)
您需要更改?
所有&
,但第一个
if($('#category').val() == 4){
console.log("http://"+window.location.hostname+'/dailyGift?id_event='+$( "#sub-category" ).val()+'&week_id='+$('#week_id').val()+'&year_id='+$('#year_id').val());
}
答案 1 :(得分:1)
请替换所有“?”使用“&”,正确的URL将是: -
http://myWebsite.dev/dailyGift?id_event=41&week_id=44&year_id=2016
如果出于安全目的加密id,也会很好。
答案 2 :(得分:0)
您说要重定向到链接,但您只是更改location.href值,这相当于点击链接。
Location.replace()将加载新资源以代替当前资源。当前页面不会添加到会话历史记录中,因此无法使用后退按钮返回到该页面。
我还清理了在url字符串中使用“and”以使其更清晰。
if ($('#category').val() == 4){
var url = "http://"+window.location.hostname+"/dailyGift?id_event="+$('#sub-category').val()+"&week_id="+$('#week_id').val()+"&year_id="+$('#year_id').val();
console.log(url);
window.location.replace(url);
}