Retour chariot textarea [Fermé]

Signaler
-
le hollandais volant
Messages postés
4984
Date d'inscription
samedi 8 mars 2008
Statut
Membre
Dernière intervention
31 octobre 2019
-
j'ai veux fais une fonction js qui s'execute par la touche entré dans un textarea
un peu comme un chat
apres le keyevent 13 (la touche enter) je veux reinitialisé mon textarea a vide.
mais qui je le fais

document.getElementById('text').value ="";

j'ai pas ce que je veux. j'ai un vide ok .mais mon placeholder ne s'affiche plus . ce qui je pense veux dire qu'il a un retour a la ligne.

svp quelqu'un peu m'aider a vider mon textarea tout a reinitialisant le contenu . un peu comme le chat de facebook. apres qu'on tape entrer le champs de vide et le placehorder est encore present

1 réponse

Messages postés
4984
Date d'inscription
samedi 8 mars 2008
Statut
Membre
Dernière intervention
31 octobre 2019
965
Salut,

Ajoutes un "event.preventDefault()" dans ta fonction.

Par défaut, la touche "entrée" ajoute un retour à la ligne, on est d’accord. Ici on veut faire en sorte que le textarea soit vide, donc on le vide, mais l’ajout du retour à la ligne se fait quand même. Il faut donc empêcher l’action par défaut (ajout du retour à la ligne) de se produire.


Autrement, une autre piste possible pour toi :

As-tu essayé d’utiliser la fonction "reset" des formulaires ?
Il te suffit d’avoir un bouton de type "reset" :

<button type="reset" value="Reset" id="reset">Reset</button>


Cliquer dessus remet à zéro tout le formulaire.

Si tu veux que la touche entrée fasse le reset, il suffit d’utiliser un "dispatchEvent" sur ce bouton, déclenché lorsque la touche entrée est pressée, dans ce genre là :
var clickEvent = document.createEvent("MouseEvents"); // créer un évennement souris
clickEvent.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
if (e.keyCode == '13') {
    document.getElementById('reset').dispatchEvent(clickEvent);
}




--