Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. Les API Web
  3. Event
  4. Event.preventDefault()

Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in EnglishAlways switch to English

Event.preventDefault()

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.

La méthodepreventDefault(), rattachée à l'interfaceEvent, indique à l'agent utilisateur que si l'évènement n'est pas explicitement géré, l'action par défaut ne devrait pas être exécutée comme elle l'est normalement.

L'évènement continue sa propagation habituelle à moins qu'un des gestionnaires d'évènement invoquestopPropagation() oustopImmediatePropagation() pour interrompre la propagation.

Comme indiqué ci-après, appelerpreventDefault() n'aura aucun effet pour un évènement qui ne peut être annulé (comme ceux émis parEventTarget.dispatchEvent() sans avoir indiquécancelable: true).

Syntaxe

js
event.preventDefault();

Exemples

Bloquer la gestion du clic par défaut

Lorsqu'on clique sur une case à cocher, par défaut, cela coche ou décoche la case. Dans cet exemple, on illustre comment bloquer ce comportement par défaut :

JavaScript

js
document.querySelector("#id-checkbox").addEventListener(  "click",  function (event) {    console.log("Désolé ! preventDefault() ne vous laissera pas cocher ceci.");    event.preventDefault();  },  false,);

HTML

html
<p>Essayez de cliquer sur la case à cocher.</p><form>  <label for="id-checkbox">Checkbox:</label>  <input type="checkbox" /></form>

Résultat

Empêcher les pressions du clavier sur un champ texte

Dans l'exemple qui suit, on démontre comment empêcher d'écrire au clavier dans un champ texte grâce àpreventDefault().

HTML

Voici le formulaire contenant le champ texte :

html
<form>  <label    >Un champ texte    <input type="text" />  </label></form>

JavaScript

Et voici le fragment de code JavaScript qui s'occupe de la logique principale. On commence par enregistrer un gestionnaire d'évènement pourkeypress :

js
let monChampTexte = document.getElementById("mon-champ-texte");monChampTexte.addEventListener("keypress", bloqueSaisie, false);

La fonctionbloqueSaisie() empêche toute saisie au clavier :

js
function bloqueSaisie(evt) {  evt.preventDefault();  console.log("Une saisie a été empêchée.");}

Résultat

Notes

InvoquerpreventDefault() à n'importe quel moment du cycle de vie d'un évènement annulera cet évènement. Cela signifie que toute action par défaut, normalement exécutée par le navigateur, n'aura pas lieu.

On peut utiliser la propriétéEvent.cancelable afin de vérifier si un évènement est annulable. InvoquerpreventDefault() sur un évènement non-annulable n'aura aucun effet.

Spécifications

Specification
DOM
# ref-for-dom-event-preventdefault③

Compatibilité des navigateurs

Help improve MDN

Learn how to contribute

Cette page a été modifiée le par lescontributeurs du MDN.


[8]ページ先頭

©2009-2026 Movatter.jp