如何在文本框中使用 onKeypress 事件

How to use onKeypress event in a textbox

我目前正在使用用于对话服务的 node-red 演示,问题是通过点击发送按钮提交的,我创建了一个函数来在用户按下 "enter" 时执行相同的操作,但确实如此不工作...有人可以帮我看看出了什么问题这是当前代码:

  <div id=id_botchathistory>
  </div>
  <div>
      <form>
        <label for="id_chattext">Ask your question here:</label>
        <input type="text" name="chattext" id="id_chattext" onkeypress="javascript:onkeypress()">
        <br/><br/>
      </form>
      <button onclick="javascript:onChatClick()">Send</button>

  function onChatClick() {
    var txt = $('#id_chattext').val();
    chat('You', txt);
    invokeAjax(txt);
  }

  function onkeypress(){
    if (e.keyCode == 13) {
    var txt = $('#id_chattext').val();
    chat('You', txt);
    invokeAjax(txt);
  }
  }

在此先感谢大家的支持。

您有一些语法错误并尝试使用 addEventListener 进行事件绑定 如:

  document.getElementById("id_chattext").addEventListener('keypress', function(e){
 if (e.keyCode == 13) {
    var txt = $('#id_chattext').val();
   e.preventDefault();
   alert(txt);
 }
});

jsfiddle: https://jsfiddle.net/s9y6qpmv/5/