Bonjour à tous,

J'ai un formulaire en back-office avec un textarea dans lequel je souhaite colorer les balises html.
J'utilise pour cela CodeMirror, mais du coup ça bloque deux autres fonctionnalités : un compteur de mots et un script wysiwyg pour afficher des boutons de mise en forme.

Voici le code de mon formulaire avec le script de CodeMirror :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
echo "<p>Texte :</p><div class='typo'><script type=\"text/javascript\">edToolbar('texte');</script></div>";
echo "<textarea cols='110' rows='40' name='texte' id='texte' onkeyup='Compter(this.form.texte.value, this.form)' required>$texte</textarea><br>";
<script type="text/javascript">
  var editor = CodeMirror.fromTextArea('texte', {
    height: "800px",
    parserfile: "parsexml.js",
    stylesheet: "css/xmlcolors.css",
    path: "js/",
    continuousScanning: 500,
    lineNumbers: false
  });
</script>
Je me doute que le conflit vient du fait que le textarea ne sert plus comme avant, il est remplacé par un autre inclus dans une iframe.

J'ai doute essayé de retoucher le code de l'éditeur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    var div = this.wrapping = createHTMLElement("div");
    div.style.position = "relative";
    div.className = "CodeMirror-wrapping";
    div.style.width = options.width;
    div.style.height = (options.height == "dynamic") ? options.minHeight + "px" : options.height;
    // This is used by Editor.reroutePasteEvent
    var teHack = this.textareaHack = createHTMLElement("textarea");
    div.appendChild(teHack);
    teHack.style.position = "absolute";
    teHack.style.left = "-10000px";
    teHack.style.width = "10px";
    teHack.tabIndex = 100000;
    teHack.id = "texte";
    teHack.onkeyup = "Compter(this.form.texte.value, this.form)";
Sans succès. Cela me rajoute bien l'id dans le textarea généré, mais pas le onkeyup. Quelqu'un aurait-il une petite piste ?
Merci d'avance de vos bonnes idées.