页面重定向不起作用

时间:2014-03-03 20:46:42

标签: javascript html redirect iframe

任何人都可以看到为什么我的重定向不起作用?我经历过论坛,我看不出我做错了什么。请注意,if语句的条件是 false 。重定向应该发生......为什么不呢?

<!DOCTYPE html>
<html>
<body>
    <p>Click the button to get a time-based greeting.</p>
    <button onclick="myFunction()">Try it</button>
    <p id="demo"></p>

    <script>
        function myFunction() {
            var x="";
            if (new Date("2014-03-04 21:00:00") < new Date()) {
                x="GOOD";
            } else {
                window.location = "http://www.google.com";
            }
            document.getElementById("demo").innerHTML=x;
        }
    </script> 
</body>
</html>

2 个答案:

答案 0 :(得分:2)

应该是:

    window.location.href = "http://www.google.com";

答案 1 :(得分:0)

嗯,您在大多数浏览器中使用的代码。如果您在旧版本的Internet Explorer中对此进行测试,则可能需要指定标准。尝试像这样运行它:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<body>
    <p>Click the button to get a time-based greeting.</p>
    <button onclick="myFunction()">Try it</button>
    <p id="demo"></p>

    <script type="text/javascript">
    <!--
        function myFunction() {
            var x="";
            if (new Date("2014-03-04 21:00:00") < new Date()) {
                x="GOOD";
            } else {
                window.location.href = "http://www.google.com";
            }
            document.getElementById("demo").innerHTML=x;
        }
    // -->
    </script> 
</body>
</html>

我已更新doctype以及指定脚本类型。另外,使用window.location.href而不是window.location,这将避免用户尝试返回上一页时可能遇到的无限循环。