【问题标题】:If statement isn't working during detecting the language to redirect the page如果在检测语言以重定向页面时语句不起作用
【发布时间】:2019-01-16 20:26:10
【问题描述】:

代码跳过 if 语句。

我已经搜索了一段时间以寻找答案,但找不到解决方案,并且由于类似的问题被标记为重复,我想先说这些。 所以这里是代码:

    <script type="text/javascript">
    function loadDocC1() {
    var userLang = navigator.language || navigator.userLanguage; 
    var lang = ("en-US");
    if (lang=userLang){
    window.location.replace("http://karabatak.info");
    }else {window.location.replace("http://kontrabandapart.info");}
    }
    </script>

无论变量如何,代码都会选择一个方向(一个站点或另一个站点)。

【问题讨论】:

  • 这个说法是假的。

标签: javascript if-statement browser syntax


【解决方案1】:

这是错误

if (lang=userLang){

应该是

if (lang == userLang){

看看这个

Js operators

【讨论】:

  • 不,我试过 "==",也试过 indexOf("en") 然后 lang>-"。没用。
  • 嘿,你看过 jsFiddle jsfiddle.net/y7guro4s/1
  • 是的,它似乎工作正常,我想当我上次尝试它时,我卡在缓存中并忽略了它。
【解决方案2】:

问题出在您的if 声明中:

if (lang = userLang)

您在此处使用 赋值运算符 (=) - 这会将值分配给变量。您想使用 相等/比较运算符 (==) - 这会测试一个值是否等于另一个值。将您的 if 声明更改为:

if (lang == userLang)

您的代码将起作用。

【讨论】:

  • 谢谢你,就是这样。
猜你喜欢
  • 2015-03-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-26
  • 2013-06-20
  • 2013-09-04
  • 2022-01-19
相关资源
最近更新 更多