2013-11-27 33 views
0

我想通过这样的URL变量...更改语言我用jQuery功能页面上从下拉选择菜单中选择一个值改变语言...的JQuery与window.location.href

$(document).ready(function(){ 
$("#lang_opt").change(function(){ 
    if ($(this).val() == "si"){ 
     window.location.href = "?lang=si"; 
    } 
    if ($(this).val() == "en"){ 
     window.location.href = "?lang=en"; 
    } 
}); 
}); 

当我将其更改为“en”时,所有功能都按预期工作,我重定向到mypage.com/index.html?lang=en 但是,如果我将其更改回“si”,则不会发生任何事情... 什么我在这里做错了吗?

+0

我想通了这个问题。在“下拉”中设置的默认语言始终是“si”。所以当我再次单击“si”时,没有任何变化,函数也不会被调用。任何想法如何解决这个问题? – user2908998

+0

也许最简单的方法是做这样的水渍http://jsfiddle.net/Gp3tR/(它不会在jsfiddle上工作) –

回答

0

尝试使用else if javascript可能是来自该位置。我已经从if声明中体验到了很多bug,除非我在每个代码中都加上else,然后才能让我的代码完美或正确地工作!

例如:

if ($(this).val() == "si"){ 
    window.location.href = "?lang=si"; 
} 
else if ($(this).val() == "en"){ 
    window.location.href = "?lang=en"; 
} 
+0

我发现问题,每当我将选择从“si”更改为“em”时,JQuery应该必须更改下拉列表中的默认选择。不知道如何做到这一点,虽然.... – user2908998