繁体   English   中英

JavaScript函数未使用html onclick触发

[英]Javascript function not firing with html onclick

我正在努力让我的javascript函数在我的html页面上单击按钮时触发。 我的html代码段:

<!DOCTYPE html>
    <html>
        <head>
        <title>VLA SYSTEM</title>
        <a href="logout.php" onclick="logout();" style="float:right;">Logout</a>
        <script
            type ="text/JavaScript" src="logout.js"></script>

        </head>
    <body>
<form>
      <script
          type ="text/JavaScript" src="regGen.js"></script>
          <script
          type="text/JavaScript" src="submit.js"></script>
<input type="button" name="btnAssign" value="Assign Owner To Registration Number..." onclick="submit()">

我的javascript代码段:

function submit() {
    window.alert("Information Captured And Stored To Database!");
}

想法是,当用户单击按钮时,警报应触发,通知用户已捕获信息,但是,我无法显示此警报。

任何建议将不胜感激。

问题是,unintuitively,内嵌处理器基本上是隐含的使用with (this)对触发事件的元素, 以及父元素,等等:

 <form> <input type="button" name="btnAssign" value="Assign Owner To Registration Number..." onclick="console.log(submit === document.querySelector('form').submit)" > </form> 

form.submit是一个内置函数,将提交表单。

使用不同的函数名称,例如doAlert

onclick="doAlert()"

function doAlert() {
  window.alert("Information Captured And Stored To Database!");
}

或改为使用Javascript正确附加侦听器(内联处理程序是非常糟糕的做法,并且可能会导致不直观的行为,如您所见):

document.querySelector('input[name="btnAssign"]).addEventListener('click', submit);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM