基于日期的Javascript重定向

时间:2012-11-30 17:27:54

标签: javascript date redirect

我希望用户在本月的第一天定向到bar.html,在本月的第二天定向到gjb.html,在本月的第三天定向到guerr.html,在其他日期定向到error.html。

我做错了什么?无论用户计算机上的日期如何,以下内容仅加载bar.html。

<html>
<script type="text/javascript">
    currentTime = new Date();
    if (currentTime.getDate() = 1)
        window.location = "bar.html";
    else if (currentTime.getDate() = 2))
        window.location = "gjb.html";
    else if (currentTime.getDate() = 3))
        window.location = "guerr.html";
    else window.location = "error.html";
</script>
</html>

我对这一切都是全新的,所以要像对待一个白痴一样解释它。

3 个答案:

答案 0 :(得分:3)

只需要进行适当的等式检查,而不是您正在使用的赋值运算符:

<html>
<script type="text/javascript">
    var currentDate = new Date().getDate();
    if (currentDate === 1)
        window.location = "bar.html";
    else if (currentDate === 2))
        window.location = "gjb.html";
    else if (currentDate === 3))
        window.location = "guerr.html";
    else window.location = "error.html";
</script>
</html>

我建议===超过==,因为它会进行正确的类型检查,并且您可以保证获得整数,因此这是一个更安全的检查。如有疑问,===

答案 1 :(得分:1)

您使用currentTime.getDate() = 1设置日期。试试currentTime.getDate() == 1currentTime.getDate() === 1。 (我不会一直使用js,但'='是错误的)。

答案 2 :(得分:1)

尝试使用double equals(==)。单个等于运算符表示赋值,而double等于表示比较。

示例:

//为a分配值 int a = 1;

//为b分配值 int b = 2;

//查看a是否等于b

if( a == b ) {
        System.out.println("They're equal!");
}
else {
         System.out.println("They're not equal!");
}