Retour chariot textarea

Fermé
oumarou - 11 déc. 2015 à 17:49
le hollandais volant Messages postés 4998 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 23 décembre 2023 - 12 déc. 2015 à 19:15
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

le hollandais volant Messages postés 4998 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 23 décembre 2023 1 056
12 déc. 2015 à 19:15
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);
}




--
0