как назначить «клавишу ввода» событию onclick?

#javascript #html

#javascript #HTML

Вопрос:

здесь у меня есть панель ввода номера с тегом, назначенным как button , у меня есть функция onclick. как я могу заставить onclick выполняться, когда пользователь нажимает enter? ( на этом этапе пользователь вводит число в поле и нажимает кнопку с помощью мыши — как я могу сделать так, чтобы пользователь вводил число и нажимал Enter, и выполнялась та же функция onclick ? )

заранее большое спасибо.

я пробовал некоторые коды, но они не будут работать

 enter code here


<div id="foot1">

 <form action="" method="" name="vform">
 <input type ="number" min="0" max="10000000" 
  placeholder="PEEM it!" value="" id="footbar"  />
  <div id="foot2">
   <li class="foot" alt="foot"  title="FOOT (ft)" onclick="runfoot()"><a  
  href=""></a></li>
  </div>
  </div>
  

Ответ №1:

Вы можете использовать keydown событие или подобное (нажатие клавиши):

 document.addEventListener('keydown', function(event) {
  const ENTERKEY = 13;
  if (event.keyCode === ENTERKEY) {
    runfoot()
  }
});
  

https://developer.mozilla.org/en-US/docs/Web/Events/keydown

Ответ №2:

Просто используйте jQuery click :

 $(document).on("keydown", e => {
    if (e.key == "Enter") {
        $(".foot").click();
    }
});
  

Ответ №3:

Вы можете попробовать это:

 
<div id="foot1">
      <form action="" method="" name="vform" onsubmit="return false">
        <input
          type="number"
          min="0"
          max="10000000"
          placeholder="PEEM it!"
          value=""
          id="footbar"
        />
        <div id="foot2">
          <li class="foot" alt="foot" title="FOOT (ft)" onclick="runfoot()">
            <a href=""></a>
          </li>
        </div>
      </form>
    </div>
    <script>
      document
        .getElementById('footbar')
        .addEventListener('keyup', function(event) {
          const key = 13;
          if (event.keyCode == key) {
            runfoot();
          }
        });
    </script>

  

Комментарии:

1. большое вам спасибо! ваш ответ был лучшим, поскольку его было очень легко понять!!! спасибо, что нашли время ответить мне!! приветствия!

2. пожалуйста, можете ли вы отметить мое решение как то, которое помогло вам?