Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: jQuery / Ajax / PHP a CKEditor
Forum PHP.pl > Forum > XML, AJAX > AJAX
RABP
Witam,

Sprawa jest następująca:
Implementuję do panelu CMS edytor CKEditor.
Inicjuję go w ten oto sposób:

  1. ...
  2. <script language="javascript">
  3. $(document).ready(function(){
  4. $('#edytor_cms').ckeditor();//#edytor_cms to id textarea, które zamieniane jest na CKEditor
  5. });
  6. </script>
  7. ...


Wszystko jest ładnie - edytor się ładuje, należycie formatuje tekst, a dane asynchronicznie przesyłane są do skryptu php, który zapisuje dane w MySQL.
Problem polega na tym, że po zapisaniu danych do bazy chcę aby ww. edytor został ponownie załadowany do textarea razem z nową zawartością.
Generalnie, pole textarea jest wczytywane, a polu tym jest nowa zawartość. Niestety w pole to nie jest załadowany edytor.
Kiedy odświeżę stronę, wszystko jest ok.

Pytanie brzmi:

Jak po ponownym załadowaniu tego elementu strony, dynamicznie załadować do niego CKEditor?
skowron-line
A coś takiego próbowałeś questionmark.gif
[JAVASCRIPT] pobierz, plaintext
  1. $.ajax({
  2. ..,
  3. success: function(response){
  4. $('#edytor_cms').ckeditor();//#edytor_cms to id textarea, które zamieniane jest na CKEditor
  5. }
  6. });
[JAVASCRIPT] pobierz, plaintext
RABP
Dzięki za odpowiedź!

Niestety, właśnie coś nie gra.
Generalnie założenie jest takie, że zanim pojawi się pole textarea, to już dla tego pola "ma być" zaimplementowany CKEditor.
I jak pisałem wcześniej, przy ładowaniu / odświeżaniu strony jest wszystko jak trzeba.
Natomiast po wykonaniu tego, co poniżej, ni jak nie działa - jest tylko surowe pole textarea z nową treścią.

[JAVASCRIPT] pobierz, plaintext
  1. ...
  2. success: function(dane) {
  3. $('#edytor_cms').ckeditor();
  4. $('#moduly').html(dane);
  5. }
  6. ...
[JAVASCRIPT] pobierz, plaintext


Gdzieś czytałem, że w FCKEditorze trzeba wyczyścić zmienne, by asynchronicznie na nowo go załadować, ale nie mogę nic na ten temat znaleźć w dokumentacji CKEditora.
Może jeszcze jakieś pomysły questionmark.gif

Nie ma to jak poranna burza mózgów.

Ostatecznie sprawa wygląda tak - dla kogoś, kto by szukał:

[JAVASCRIPT] pobierz, plaintext
  1. ...
  2. success: function(dane) {
  3. $('#edytor_cms').destroy();//Usuwam instancję CKEditora, którą utworzyłem na samym początku
  4. $('#edytor_cms').ckeditor();//Ponownie tworzę nową instancję CKEditora
  5. $('#moduly').html(dane);//Ładuję asynchronicznie pobrane dane
  6. }
  7. ...
[JAVASCRIPT] pobierz, plaintext


Dzięki za zaangażowanie!
Temat zamknięty.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.