Récupérer la valeur d'un textarea attaché à Editeur de Dojo avec une requête POS

EMSIEN Messages postés 194 Date d'inscription lundi 26 juillet 2004 Statut Membre Dernière intervention 11 juin 2009 - 28 avril 2008 à 12:38
seij Messages postés 1 Date d'inscription mardi 26 août 2008 Statut Membre Dernière intervention 26 août 2008 - 26 août 2008 à 01:48
Bonjour tout le monde,

Je vous explique là ou je me bloque:

Quand j'envoie le contenu d'un textarea HTML simple à l'aide d'une requête POST ça marche, je

récupère le contenu, mais une fois j'attribue un type à mon textarea pour qu'il devienne un editor

riche, avec Dojo (type="dijit.Editor") je n'arrive plus à récupérer la valeur de mon textarea, le

résultat est toujours null.

J'ai regardé sur la doc de dojo mais la solution proposée (getValue) ne marche pas, ça me sort que

l'objet n'a aps de propriètés.

Quelqu'un a-t-il une idée sur ça? comment pourrai-je récupérer le contenu de mon textarea?

Merci d'avance.

10 réponses

cs_bultez Messages postés 13616 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
28 avril 2008 à 12:52
Bonjour,
    faudrait connaître dojo, ce que tu appelles un "editor riche",
            et surtout comment tu utilises tout ça !!!!
    ce que je peux simplement te dire, c'est qu'un textarea, c'est du texte et rien de plus.
    tu parles "d'editor riche", peut-être penses-tu à un "wysiwyg" ?
       je ne sais pas. mais si c'est le cas, ce n'est pas possible avec un textarea.
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0
EMSIEN Messages postés 194 Date d'inscription lundi 26 juillet 2004 Statut Membre Dernière intervention 11 juin 2009
28 avril 2008 à 13:20
bultez,
mon textarea est lié à un objet de dojo (dijit.editor) qui lui donne un éditeur WSIWYG (voir exemple sur le lien ci-dessous : http://dojotoolkit.org/book/dojo-book-0-9/part-2-dijit/advanced-editing-and-display/editor-rich-text

Donc là je n'arrive pas à récupérer le contenu du textarea une fois qu'il est attaché au composant de Dojo ...

J'espère que là je suis plus clair que tout à l'heure.
0
cs_bultez Messages postés 13616 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
28 avril 2008 à 13:31
>mon textarea est lié à un objet de dojo (dijit.editor) qui lui donne un éditeur WSIWYG
    à mon humble avis, un éditeur wysiwyg ne peut pas être dans un textarea !
    ou alors tu parles de "bbcode" ou je ne sais quoi ( échange avce le serveur ...
        ou autre langage que javascript )
    si c'est un éditeur wysiwyg "pur", coté client, un textarea ça ne fonctionne pas.
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0
EMSIEN Messages postés 194 Date d'inscription lundi 26 juillet 2004 Statut Membre Dernière intervention 11 juin 2009
28 avril 2008 à 13:41
Voici à quoi ressemble mon code :
        <textarea name='PresentationArea' cols='80' rows='25' dojoType='dijit.Editor'>
             Mon texte ....
        </textarea>

Je travaille avec une JSP/Javascript(avecDojo) (pas de bbcode), et je veux savoir comment je pourrai récupérer la valeur de son contenu une fois lié à Dojo (dojoType='dijit.Editor')?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_bultez Messages postés 13616 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
28 avril 2008 à 13:57
et tu es sûr que dojoType='dijit.Editor' ça fonctionne ?
pas en html du moins, ni en javascript, ni en je ne sais quoi...
    peut-être en dojo ? je doute mais peut-être me trompe-je....
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0
EMSIEN Messages postés 194 Date d'inscription lundi 26 juillet 2004 Statut Membre Dernière intervention 11 juin 2009
28 avril 2008 à 17:04
Oui ça fonctionne, dojo est un Framework Javascript qui peut être intégré à tes applications web.
là je sens qu'on dévie un peu sur ma question initialie :(.  
0
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 16
28 avril 2008 à 18:06
Bonjour,
La plupart des WSIWYG fonctionne avec une
IFRAME qui est crée, et prend la place de la TEXTAREA qui elle est hidden, pour
pouvoir mettre en forme le texte, et ne mettent le innerHTML du document.body de l'IFRAME qu'au submit dans la value de la TEXTAREA pour envoi.

A quel
moment souhaites tu récupérer le texte?

;O)
0
EMSIEN Messages postés 194 Date d'inscription lundi 26 juillet 2004 Statut Membre Dernière intervention 11 juin 2009
28 avril 2008 à 18:26
Je souhaite récupérer le texte dans une page JSP (pour effectuer un traitement) après clique sur le bouton dans mon formulaire initiale.
Si tu peux me mettre un exemple de code de la solution présentée ci-haut, ça serait super.
0
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 16
28 avril 2008 à 18:44
- Il y a lourd à parier que DOJO mets à ta disposition
une fonction de ce type, toutes tes initialisations sont-elles correctes?
-
Quelle fonction exécutes tu sur le submit ?
<table bgcolor="#e6effe" border="0" cellpadding="5" cellspacing="0" width="100%">----, Si tu peux me mettre un exemple de code de la
solution
présentée</td>
</td></tr></tbody></table>Sorry
jamais codé un truc de ce style.
;O)
0
seij Messages postés 1 Date d'inscription mardi 26 août 2008 Statut Membre Dernière intervention 26 août 2008
26 août 2008 à 01:48
La faute courante dans ce genre de cas est celle-ci

// dans les entetes Javascript
dojo.require("dojo.parser");
dojo.require("dijit.Editor");

<textarea id="machin" type="dijit.Editor">...</textarea>

Pour récupérer en Javascript la valeur du champ : dijit("machin").getValue() et surtout pas .value ni essayer d'aller chercher la valeur dans le HTML ou dans le DOM. Avec dojo, les champs créés à partir des balises HTML sont souvent supprimés pour être remplacés par d'autres ( comme ici, par une IFrame ).
Donc toujours utiliser les méthodes fournies avec Dojo pour récupérer les valeurs des Widgets créés par Dojo, surtout ne pas essayer d'aller taper dans le HTML.

Note : je viens d'utiliser l'objet dijit.Editor et la récupération des valeurs marche tres bien.
Tip : si tu utilises firebug, tu peux essayer tes tests de récupération dans la console Firebug directement, en tapant, dans ce cas, dijit.byId('machin').getValue() et hop, le texte formatté en HTML apparait directement dans la console.
0