簡體   English   中英

如何聆聽HTML頁面中的提交按鈕

[英]How to listen to press submit button in HTML page

用戶按下enter鍵后,此腳本將發出text-enteredtext-entered 我需要聽的是單擊HTML頁面中的“ submit按鈕。 這是腳本:

// When the user hits return, send the "text-entered"
// message to main.js.
// The message payload is the contents of the edit box.
var textArea = document.getElementById("txt-field");
textArea.addEventListener('keyup', function onkeyup(event) {
  if (event.keyCode == 13) {
    // Remove the newline.
    text = textArea.value.replace(/(\r\n|\n|\r)/gm,"");
    addon.port.emit("text-entered", text);
    textArea.value = '';
  }
}, false);

HTML是:

<html>
<head>
    <style type="text/css" media="all">
      textarea {
        margin: 10px;
      }
      body {

        background-color:#b3dbfa;
      }
    </style>
  </head>

  <body>

  <form> 
      Enter URL: <br>
      <input type="text" id="txt-field">
      <input type="submit" value="Add">
  </form>
  <script src="get-text.js"></script>
  </body>
</html>

看起來您正在使用舊版技術Addon-On SDK。 Mozilla建議遷移到WebExtensions。

但是要回答您的問題:使用jquery可以做類似的事情

$('#myform').submit(function(e) {
    e.preventDefault(); // don't submit
    console.log('do something');
});

使用純JavaScript,您可以執行以下操作

var form = document.getElementById('myform');
form.addEventListener('submit', function(e) {
    e.preventDefault(); // don't submit
    console.log('do something');
})

要監聽“提交”按鈕中的單擊,只需在腳本中將事件偵聽器添加到“提交”按鈕中即可。 但首先,在HTML的“提交”按鈕中添加和id:

<input type="submit" value="Add" id="submit-btn">

在腳本中:

addbtn=document.getElementById("submit-btn");
addbtn.addEventListener('click', function (event) {
event.preventDefault();
// Get the text and remove the newline.
var text = formTextArea.value.replace(/\s/,"");    //remove space characters
var level = document.getElementById("levels-list").value;
//send the entered data to the addon to store them
self.port.emit("text-entered", text);
                                                        self.port.emit("selected-level", level);
formTextArea.value = ''; //intialise the text area to empty after adding the item.
}
,false);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM