簡體   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