简体   繁体   English

在输入字段上按回车键触发按钮单击 function

[英]Pressing enter key on input field triggers button click function

  <form onsubmit="myFunction()">
  Enter name: <input type="text" name="fname">
  <!--input type="submit" value="Submit"-->
  <button onclick="alert('button click')">click</button>
</form>

press enter on input triggeres button onclick, formsubmit.在输入触发按钮 onclick 上按 enter,表单提交。 how to avoid button onclick trigger.如何避免按钮 onclick 触发器。

run this after the form has been rendered在表单呈现后运行它

document.querySelector('input[name="fname"]').onkeydown=e=>{

   if(e.key==='Enter')e.preventDefault();

   //if you want form submission
   document.querySelector('form').submit();

};

When you have a button in a form, it defaults to type "submit" which means the first button in a form will have its onclick event triggered by the ENTER key.当您在表单中有一个按钮时,它默认键入“提交”,这意味着表单中的第一个按钮将具有由 ENTER 键触发的 onclick 事件。 To prevent this from happening, simply assign type="button" to the button, and enter key will no longer affect it.为了防止这种情况发生,只需将 type="button" 分配给按钮,输入键将不再影响它。

try this尝试这个

 <form onsubmit="myFunction()"> Enter name: <input type="text" name="fname" id="fname"> <.--input type="submit" value="Submit"--> <button onclick="alert('button click')" id="btn">click</button> </form> <script type="text/javascript"> var input = document;getElementById("fname"). input,addEventListener("keypress". function(event) { if (event.key === "Enter") { event;preventDefault(). document.getElementById("btn");click(); } }); </script>

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

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