Html 代码重定向问题

Html 代码重定向问题,html,Html,可能重复: 我对下面的代码有一些问题,特别是window.location=”http://www.google.com“输入正确密码后,无法使其重定向 <div class="buttons"> <input class="orangebutton" type="submit" value="Continue" onclick="if (document.getElementById('password').value == 'hi') window

可能重复:

我对下面的代码有一些问题,特别是
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!');" />

您的语法有错误。您不应该在
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!');" />

您的语法有错误。您不应该在
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!');" />

您必须转义双引号,最好使用
.href
属性作为字符串,而不是单独使用
位置作为对象,如下所示:

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

使用单引号而不是双引号,因为后者不能在html元素的上下文中转义。感谢James Beilby发现了这一点。

您必须转义双引号,最好使用
.href
属性作为字符串,而不是单独使用
位置作为对象,如下所示:

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

使用单引号而不是双引号,因为后者不能在html元素的上下文中转义。感谢James Beilby发现了这一点。

我不能确定这是唯一一个没有更多细节的问题,但您在以下内容中使用了双引号:

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!');"

我不能确定这是唯一一个没有更多细节的问题,但您在以下内容中使用了双引号:

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!');"

您的代码中有两个错误:

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

2) 在
else
关键字之前应该有


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

您的代码中有两个错误:

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

2) 应该有
紧跟在
else
关键字之前



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

http://www.google.com
。另一个观察结果是,人们可以很容易地知道密码是什么……在页面的源代码中可以看到密码检查?太棒了。@TheZ,这肯定是示例代码,而不是实际实现的代码。@Brad如果它是任何类型的javascript检查(除了node.js,因为这是服务器端或ajax验证调用),它对世界来说都是可见的,只需付出最小的努力。@TheZ,哦,我一点也不反对。我只是说这可能只是测试代码,他实际上并没有做客户端密码检查。当然,我可能错了……对
http://www.google.com
。另一个观察结果是,人们可以很容易地知道密码是什么……在页面的源代码中可以看到密码检查?太棒了。@TheZ,这肯定是示例代码,而不是实际实现的代码。@Brad如果它是任何类型的javascript检查(除了node.js,因为这是服务器端或ajax验证调用),它对世界来说都是可见的,只需付出最小的努力。@TheZ,哦,我一点也不反对。我只是说这可能只是测试代码,他实际上并没有做客户端密码检查。当然,我可能错了……在Javascript字符串的上下文中,转义双引号是可行的,但在这里不行:OP需要使用单引号。我不这么认为,James,试试JSFIDLE让你看看。嗯,刚刚试过一个,在IE和Firefox中似乎需要单引号。同样,这是在HTML主体中的事件处理程序上下文中,而不是Javascript变量中。我吃我自己的话,你是对的,相应地更新我的答案,谢谢!没问题,我只知道经常犯这个错误就够了!转义双引号将在Javascript字符串的上下文中起作用,但在这里不起作用:OP需要使用单引号。我不这么认为,James,尝试一个JSFIDLE让你看到。嗯,刚刚尝试了一个,在IE和Firefox中似乎需要单引号。同样,这是在HTML主体中的事件处理程序上下文中,而不是Javascript变量中。我吃我自己的话,你是对的,相应地更新我的答案,谢谢!没问题,我只知道经常犯这个错误就够了!事情对我来说不太好,我更新了帖子。事情对我来说不太好,我更新了帖子。