JS - Récupérer valeur textarea en temps réel

Ce topic a été résolu
Balatharas

Balatharas Le 19 avril 2017 à 15:15 (Édité le 25 janvier 2019 à 17:53)

Salut 😄
Voilà mon pb:
En gros je fais un formulaire dynamique qui a une textarea.
Donc le but là c'est de récupérer sa valeur en temps réel:
Exemple, dans le formulaire, la textarea est vide, donc quand j'appuie sur le submit:
$(document).on('click', '#submit', function(e) {
   e.preventDefault();
   var ctnt = $('#ctnt').text();
   alert(ctnt);
});
Du coup là ça m'envoie un alert qui contient rien
Mais si (sans actualisation) j'écris dans la zone de texte puis que je valide, le alert restera vide.
Et je voudrais que le alert (enfin la variable ctnt) contienne ce que la textarea contient, même si elle est modifiée.
Je me dis que c'est peut-être possible avec un onChange ?
Voilàà ^^
Profil introuvable

Profil introuvable Le 19 avril 2017 à 19:08

Hello 'Beignet'

Si j'ai bien compris, tu souhaites réaliser cela ?
Balatharas

Balatharas Le 19 avril 2017 à 20:17 (Édité le 19 avril 2017 à 20:28)

Bah a peu près sauf que jvais essayer de mieux expliquer.
Quand ma textarea (et non input) contient "test" (par défaut, pas moi qui l'écrit depuis la page)
Alors j'appuie sur le bouton qui a pour id #submit, donc quand je clique dessus ça envoie un alert qui contient le contenu de la textarea. Ici "test". Mais (sans actualisation) si j'écris dans la textarea autre chose comme "test test test" et que je clique sur le bouton, bah ça me renvoie "test" au lieu de "test test test"
^^

EDIT: J'ai testé le code que j'ai fait sur wamp, sur fiddle: https://jsfiddle.net/cc0ph2rn/1/
C"est exactement ce que je veux faire 😭 mais moi avec ce code ça marche pas 😭 pourtant j'ai bien jQuery de chargé 😕
Profil introuvable

Profil introuvable Le 19 avril 2017 à 20:46

Re:

Je viens d'essayer et quand j'écris plusieurs fois "TEST" et que j’appuie sur "Envoyer" la boite de dialogue s'ouvre avec le nombre de "TEST" que j'ai écris.
Qu'est-ce qui ne fonctionne pas chez toi ?
TheOldNoob

TheOldNoob Le 19 avril 2017 à 21:58 (Édité le 19 avril 2017 à 21:59)

Salut,
C'est fiddle qui est tout naze 😀

Il faut passer sur codepen, qui entre autre permet de partager des projets 😉

tout en natif, te prend pas la tête avec jquery juste pour afficher une alerte


https://codepen.io/anon/pen/EmPLGB

C'est cadeau !
Balatharas

Balatharas Le 20 avril 2017 à 14:40 (Édité le 20 avril 2017 à 14:56)

Je teste ton code Noob et je vous redis

EDIT: Le problème maintenant, c'est que ton code marche mais pas avec l'éditeur Wysibb (celui de ce forum)
Mais ça marche avec l'éditeur wysibb si on est en mode BBCode affiché en texte brut (si on clique sur [BBCODE] )
TheOldNoob

TheOldNoob Le 20 avril 2017 à 18:57

ok, la par contre il faut m'expliquer pourquoi faire une alert (toute moche) lié a l'éditeur wysibb 😀
Balatharas

Balatharas Le 21 avril 2017 à 12:11

En fait c'est juste pour être sur que la variable se met bien a jour quand on fait valider.
Parce que sinon jvais pas faire de alert mais bien un script ajax et tout le bordel pour envoyer ça dans ma bdd. De toute façon j'ai l'intention de créer mon propre éditeur de texte 😋
david_anthony

david_anthony Le 11 septembre 2017 à 19:55

  je crois que le pb c est que tu utilise text() au lieu de val()

  text() est utile pour  les div ou les span et autre
  val() pour les Input et textarea.
  html() c est un peu comme text juste lui il prendre tout le code contenu dans la div selectionne
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte