Maison >interface Web >js tutoriel >Comment puis-je empêcher la soumission d'un formulaire lorsque vous appuyez sur la touche Entrée et exécuter du JavaScript personnalisé à la place ?

Comment puis-je empêcher la soumission d'un formulaire lorsque vous appuyez sur la touche Entrée et exécuter du JavaScript personnalisé à la place ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-04 15:11:10916parcourir

How Can I Prevent Form Submission on Enter Key Press and Execute Custom JavaScript Instead?

Empêcher l'envoi d'un formulaire lorsque vous appuyez sur la touche Entrée

Lorsqu'un utilisateur appuie sur la touche Entrée dans un formulaire, le comportement par défaut est de soumettre le formulaire . Cependant, certains scénarios nécessitent d'empêcher la soumission du formulaire et d'exécuter une fonction JavaScript personnalisée à la place.

Pour y parvenir, l'écouteur d'événements sur le formulaire peut être modifié pour gérer la pression sur la touche Entrée. Voici comment procéder :

document.querySelector("form").addEventListener("keypress", (e) => {
  if (e.key === "Enter") {
    // Prevent form submission
    e.preventDefault();

    // Call your JavaScript function
    customFunction();
  }
});

function customFunction() {
  // Your custom JavaScript function logic
}

Dans cet exemple, la soumission du formulaire est empêchée en appelant e.preventDefault() dans le gestionnaire d'événements. En ajoutant cette condition et en appelant la fonction personnalisée, la touche Entrée déclenche la fonction customFunction() au lieu de soumettre le formulaire.

Remarque :

Les navigateurs modernes recommandent d'utiliser e. clé au lieu de e.keyCode. Cependant, pour des raisons de compatibilité avec les anciens navigateurs, l'utilisation des deux peut être nécessaire.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn