2011-12-14 6 views
1

J'ai un bouton qui, lorsque vous cliquez dessus, définit le texte dans un champ de saisie. Le champ de texte de saisie a un événement de changement qui se déclenche quand quelqu'un met du texte, cependant, je ne veux pas que cet événement onchange se déclenche quand sa valeur est injectée en cliquant sur le bouton décrit ci-dessus.Annulation d'un événement javascript secondaire

Est-ce possible?

Notez que cela ne soit pas lié à l'événement bouillonnement/propagation de l'événement, cliquez sur le bouton

+2

Le simple réglage de l'attribut 'value' de l'élément' 'ne déclenchera pas l'événement' change' par lui-même. Est-ce que tu l'as essayé? –

Répondre

0

Vous pouvez remplacer l'événement du champ de texte par un .blur() ou .keyup(), qui détecterait uniquement si le champ de texte perd le focus ou si l'utilisateur saisit le texte manuellement (respectivement).

0

Vous pouvez déterminer la source de l'événement comme celui-ci:

var sourceElement = evt.srcElement || evt.target; 

... l'ont un if déclaration à changer.

0

Ceci est possible SI vous changez l'événement onchange de votre champ de saisie en événement "inputchangechange".
Donc, vous pouvez simplement à cela

Questions connexes