CKeditor 3 speichert Eingaben nicht, wenn das Formular per jQuery.serialize() über Ajax submitted wird

CKeditor 3 speichert Eingaben nicht, wenn das Formular per jQuery.serialize() über Ajax submitted wird

Wie die Überschrift schon verrät, hatte ich ein Formular gebaut mit einer Textarea, die durch den Wysiwyg-Editor CKEditor 3.1 ersetzt werden sollte.  Darunter gab es einen Button “Speichern”, der beim Klick eine Javascript-Funktion aufruft, die das Formular serialisiert ( $(form).serialize(); ) und diese serialisierten Daten dann per jQuery-Ajax an den Webserver sendet. Allerdings wurden alle Eingaben im Wysiwyg-Editor dabei ignoriert.

Ich habe dann durch Zufall rausgefunden, dass die Eingaben im Editor nicht nach jedem Ändern wieder in die urspüngliche Textarea geschrieben werden, sondern immer nur, wenn das Formular submitted wird.

Ich habe also meine Funktion zum Speichern der Daten umgeschrieben und die Submit-Methode des Formulars beim Klick auf den Speichern-Button ausgelöst: $(form).trigger(‘submit’). Dabei schreibt der CKEditor die Eingaben wieder in die Textarea zurück und die Daten können(bevorzugt bei Post) übertragen werden.

Wer aber doch lieber die Ajax-Methode nehmen möchte, kann die Daten aus dem CKEditor auch vor dem Ajax-Aufruf manuell in die Textarea schreiben. Das geht so:

var editor_data = CKEDITOR.instances.editor1.getData();
$(textarea).html(editor_data);
  • http://www.w-d-s-b.de Willi da SIlva Borges

    Danke für den Tip :-) .
    Hatte das selbe Problem.
    Nun hab ich aber ein anderes :-(
    Wenn ich Umlaute in meinem Text habe werden die Texte nach den Umlauten abgeschnitten.
    Hab die Ursache auch gefunden der CKeditor macht aus irgendwelchen Gründen aus einem ä kein ä sondern [auml; usw.
    Hast Du zufälligerweise auch dafür eine Lösung
    Danke schon mal im Voraus

  • http://joomla-jquery-internet.de Robbz

    Wenn der Text beim Speichern oder Laden aus der DB abgeschnitten wird kann das ein UTF-8 Problem sein. Das hatte ich neulich auch, allerdings nicht mit dem CK-Editor sondern beim Import einer CSV-Datei. Eventuell reichts ja schon, wenn du auf Server-Seite utf8_encode($input) oder utf8_decode auf den Text anwendest…

blog comments powered by Disqus

1&1 DSL

 

   

  • Robbz Says:

    Kannst du die index.php deindes Templates mal in .txt umbenennen und zum Download verlinken, damit i...

  • Graveto Says:

    Auch bei mir werden alle Skrips nach wie vor geladen. Die Anführungszeichen habe ich korrogiert?!...

  • Robbz Says:

    Wenn der Text beim Speichern oder Laden aus der DB abgeschnitten wird kann das ein UTF-8 Problem sei...

  • Willi da SIlva Borges Says:

    Danke für den Tip :-).Hatte das selbe Problem.Nun hab ich aber ein anderes :-(Wenn ich U...

  • Robbz Says:

    Hi DirtyWorldKann es vielleicht daran liegen, dass du die ganzen Anführungszeichen im Code n...

  • Jan Says:

    Hallo ich bekomme die Fehlermeldung:Fatal error: Cannot redeclare JHTMLBehavior::jquery() in /Ap...

  • Robbz Says:

    Im Grunde in jeder PHP-Datei. Eine Komponente oder ein Modul kann ja im Frontend auch jQuery verwend...

  • Waldo Says:

    danach hab ich schon lange gesucht,... aber"Um nun jQuery automatisch im Joomla-Code zu verwende...