[ExtJs] onEnter im Ext.form.HtmlEditor

nepda

Erfahrenes Mitglied
Hallo,

ich arbeite seit nicht allzu langer Zeit mit dem JavaScript Framework ExtJs.
Ich habe jetzt ein kleines Formular (sher klein!) und will im letzten Element, welches ein Ext.form.HtmlEditor ist, beim onEnter Event das Formular abschicken (und mit Strg+Enter eine neue Zeile einfügen). Hat hier jemand eine Idee wie ich das realisieren kann? Das passende Event gibt es leider nicht direkt, wie es bei Ext.form.TextArea der Fall ist.

Danke.
 
Leider habe ich (noch) keine gute Lösung gefunden. Vorerst habe ich es folgendermaßen gelöst:
Javascript:
var editor = new Ext.form.HtmlEditor(/* ... */);

editor.addListener('beforesync', function (HtmlEditor, html)
{
    html = html.substr(0, html.length-4);
    if (html.substr(html.length-4, 4)=='<br>')
    {
        // mach irgendwas.... z.B. Formular absenden.
    }
}
Ich wäre weiterhin dankbar für weitere Ideen.
 
Zuletzt bearbeitet von einem Moderator:
Moin,

Wenn du die gedrückten Tasten ermitteln willst, musst du den keydown-Event im iframe überwachen.

Das sollte ca. so gehen:
Code:
editor.on('activate',
          function()
            {
              editor.doc.onkeydown=function(event)
                {
                  //Tasten überwachen
                }
             }
         );

Ob das nun aber wirklich geht, kann ich nicht sagen....probiers halt mal.
Deine Variante ist vielleicht eher erfolgversprechend.
 
Ja, leider funktioniert das nicht (ich weiß nichtmal, ob man generell Key Events von iFrames auslesen kann, probier ich nachher mal). Da werde ich wohl meine Variante nehmen müssen, die ist aber sehr aufwendig. Wenn zum Beispiel die Schriftart geändert wurde steht am Ende ein "</font><br>" und nicht ein "<br><br>". Da werde ich wohl jede Möglichkeit abfangen müssen... nicht sehr elegant :mad:

Trotzdem danke, für deine Antwort ;)
 

Neue Beiträge

Zurück