选择城市并重定向到url

Choose city and redirect to url

本文关键字:url 重定向 城市 选择      更新时间:2023-12-25

url重定向不起作用。我需要让用户选择一个城市并转到url页面。我做错了什么?

window.location.href = 'http://' + city + '.example.com';

谢谢。

<script type="text/javascript" src="/jquery-1.3.2.min.js"></script>
<script type="text/javascript">
//<![CDATA[
$(function(){
var cityChosen = getCookie('citychosen');
if(cityChosen!=null && cityChosen!=''){
    var chosen = $('#choose option[value="'+cityChosen+'"]');
    chosen.attr('selected',true);
}
$("#choose").change(function(){
    var selected = $("#choose option:selected");
    var output = "";
    window.location.href = 'http://' + city + '.example.com';
    if(selected.val() != 0){
        setCookie('citychosen',selected.val(),365);
    }
    $("#output").removeClass().addClass(selected.val()).html(output);
});
});
function setCookie(name,value,days) {
if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
function getCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
function dropCookie(name) {
createCookie(name,"",-1);
}
//]]>
</script>
</head>
<body>
<select id="choose">
    <option value="0">Select city</option> 
    <option value="amsterdam">Amsterdam</option> 
    <option value="newyork">New York</option> 
    <option value="london">London</option> 
    <option value="cardiff">Cardiff</option> 
</select>

您可以看到,在此代码中,window.location.href只是一个处理Url位置的属性。您需要将其设置为某个值才能正常工作。window.location.href与这里的var x="something"相同。

因此,请使用window.open()方法,它符合的目的

window.open(window.location.href);

注意:拼写或语法可能有任何错误。我刚刚解释了功能。您也可以使用各种参数。看看这个

首先尝试将window.location.href移动到$("#choose").change(function(){})的底部;听众。其次,您正在引用一个不存在的city变量,请将其重命名为cityChosen