使用代码重定向问题

时间:2012-10-08 17:01:03

标签: html

  

可能重复:
  Password HTML redirect

我在使用下面的代码时遇到了一些问题,特别是window.location="http://www.google.com"当我输入正确的密码时,我无法让它重定向。

    <div class="buttons">
        <input class="orangebutton" type="submit" value="Continue" onclick="if (document.getElementById('password').value == 'hi') window.location="http://www.google.com" else alert('Wrong Password!');" />
    </div>

更新: 这就是我现在所拥有的,重定向仍然无效。

        <input class="orangebutton" type="submit" value="Continue" onclick="if (document.getElementById('password').value == 'hello') window.location='http://www.google.com'; else alert('Wrong Password!');" />

4 个答案:

答案 0 :(得分:3)

你必须转义双引号,也最好使用.href属性作为字符串,而不仅仅是location这是一个对象,如下所示:

window.location.href='http://www.google.com'

<强>更新
使用单引号而不是双引号,因为后者无法在html元素的上下文中转义。感谢James Beilby发现这一点。

答案 1 :(得分:2)

我无法确定这是唯一没有更多细节的问题,但您使用的是双引号:

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

由于您使用双引号来封装整个onclick语句,因此您需要使用单引号:

window.location='http://www.google.com'

此外,在关键字“else”之前需要一个分号。整个处理程序变为:

onclick="if (document.getElementById('password').value == 'hi') window.location='http://www.google.com'; else alert('Wrong Password!');"

答案 2 :(得分:1)

您的代码中有两个错误:

1)onclick参数的值包括",字符串在该点结束。请改用'(单引号)。

2);关键字之前应该else

所以,最后它应该是window.location='http://www.google.com';

答案 3 :(得分:0)

语法错误。您不应在"内使用onclick=""。所以用以下代码替换它:

<input class="orangebutton" type="submit" value="Continue"
       onclick="if (document.getElementById('password').value == 'hi') window.location='http://www.google.com' else alert('Wrong Password!');" />