如何将“onClick”事件链接到javascript文件?

时间:2015-11-18 18:18:38

标签: javascript html login

我有一个带有onclick事件的按钮。

我的按钮的javascript不在HTML文档中,但我将其与<script src="example.js"></script>的文档相关联。如何将“onclick”事件链接到我的javascript文件?这就是我的尝试。

function pasuser(form) {
    if (form.id.value=="user") { 
        if (form.pass.value=="password") {              
            location="example.html" 
        } else {
            alert("Invalid Password")
        }
    } else {
            alert("Invalid UserID")
    }
}

<!DOCTYPE html>
<html>
    <head>
        <title>NATUREBOWL- LOGIN</title>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <link rel="shortcut icon" href="favicon.ico"/> 

    <script src="loginform.js"></script>

</head>
<body>
        <p>Log in to Conitinue</p>
        <form name="login"><p>username    </p><input name="id" type="text">
            <br/>
        <p>password</p>
        <input name="pass" type="password">
            <center>
                <input type="button" value="Login" onClick="login.js">
            </center>
</center>
</div>
</body>
</html>

PS - function pasuser(form)代码为login.js。

PPS - 很抱歉,如果我的问题有点模糊,我就很难描述它。告诉我,我可以清理一些东西或删除这个问题。

7 个答案:

答案 0 :(得分:1)

onClick无法将您重定向到另一个页面。它不是那样设计的。您所要做的就是在.html文档的标题部分中包含.js文件。它将包含当前html文档的.js页面。您必须询问所需的功能,该功能将在单击按钮时触发

<head>
   <script src="loginform.js"></script>
</head>

然后你可以将这个.js文件中的任何函数附加到按钮的onClick envent

onClick="pasuser(//parameters);"

答案 1 :(得分:0)

如果您导入.js文件,实际上就像在页面本身中编写该代码一样。只需在onclick规范中调用函数名称。

答案 2 :(得分:0)

不要将onclick设置为login.js,请确保将.click值设置为该函数的名称,因此您的onclick应为

<input type="button" value="Login" onClick="pasuser(< put parameter here )">

答案 3 :(得分:0)

我假设您只想让onclick调用该函数。

<input type="button" value="Login" onClick="pasuser(<parameters>)">

答案 4 :(得分:0)

如果我没弄错的话,OnClick需要运行该功能。仅链接文件是不够的,因为您的浏览器不知道您希望它运行该功能。试试这个:

<input type="button" value="Login" onClick="pasuser(form)">

答案 5 :(得分:0)

好的,你要做的就是调用函数而不是js。 所以代码看起来应该是这样的

<center>
    <input type="button" value="Login" onClick="pasuser(form)">
</center>

答案 6 :(得分:0)

<script src=""/>标记关联的外部代码的行为与直接放在<script></script>标记内的代码相同。因此,请将您的函数pasuser(form)视为直接在HTML中编码。

OnClick和其他事件属性需要在其引号内使用javascript代码,因此指定文件名onClick="login.js"绝对不正确。你必须在里面放一些调用你的函数的javascript代码,将表单作为参数传递:onClick="pasuser(document.forms.login)"

请注意,您的代码存在许多缺点和糟糕的设计问题:

  1. 现在,按名称访问表单和表单元素是一种旧习惯
  2. 拥有一个名为“id”的元素会导致DOM树内的歧义
  3. 您永远不应该永远不会在客户端代码上进行此类用户名/密码验证!永远!