在 HTML 中使用 onclick 方法?

Use onclick method in HTML?

我正在制作一个网站,其中登录页面有一个未设置为按钮的按钮,它需要调用一个函数。我添加:

onclick="signin()"

到第 216 行的代码。(请参阅此处的代码:http://pastebin.com/Uq2nfWTQ

我已经尝试在 div 的下方和 main.js 文件中添加函数。两者都没有工作。我应该把功能放在哪里才能使按钮真正起作用?此外,该功能是重定向到不同的页面,所以我会这样做:

window.location = "PUT LOCATION HERE"

这是您所描述内容的最低限度:

<html>
<head>
    <script>
        function signin() {
            console.log("Hello, I work!");
        }
    </script>
</head>
<body>
    <form action="javascript:void(0);" method="get">
        <input type="submit" value="Sign In" onclick="signin()">
    </form>
</body>
</html>

与您的粘贴箱相比,您在任何地方都没有 signin 功能。

有些人由于各种原因 JavaScript 残疾或受阻;制作一个 需要 JavaScript 的网页只是为了转到另一个页面,这对那些人来说是非常烦人的! (我也是其中之一。)

此外,基于 JavaScript 的导航永远不如常规 link 有用。例如,您可以中键单击普通 link 以在新选项卡中打开它们,我一直这样做;它在 JavaScript-powered "fake" link 时中断,因为该页面的代码不能 运行 在新选项卡中。一般来说,使用 JavaScript 来模拟现有的浏览器功能并不是一个好主意。

因此,如果您所做的只是导航,只需制作一个带有 <a> 的常规 link 并使用 CSS 将其样式设置为 外观 [=23] =] 像一个按钮。一个好的(虽然丑陋)开始:

a#signin-button {
    display: inline-block;
    background: lightgray;
    border: 1px outset gray;
    text-decoration: none;
}

或者,将其设为普通的提交按钮。 (不推荐太多,因为你不能用提交按钮做那么多——例如,单击鼠标中键在新选项卡中打开不起作用。)

<form action="signin.html" method="GET">
    <input type="submit" value="Sign In">
</form>

这是一个例子

<!DOCTYPE html>
<html>
<body>

<p>Click the button to go to signin page.</p>

<button onclick="signin()">Try it</button>

<p id="demo"></p>

<script>
function signin() {
    location.href = 'signin.php';

}
</script>

</body>
</html>