Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [symfony] edytor wysiwyg i ajax- zapisuje dopiero za drugim razem zmiany
stachuf11
post
Post #1





Grupa: Zarejestrowani
Postów: 154
Pomógł: 1
Dołączył: 24.04.2006

Ostrzeżenie: (0%)
-----


chodzi o edytorki tyny_mce i FCK przy submit formularza ajaxem,
jest wmontowany edytor wysiwyg, tiny_mce oraz FCK tak samo sie zachowują
gdy ajaxem wywoła się submit formularza,
to wartość z pola, które jest ustawione jako edytorek zapisywana jest poprawnie dopiero przy drugim kliknieciu przycisku zapisz, podczas gdy wartosci z pola textarea lub zwykly input zapisywane są poprawnie , czyli juz przy pierwszym kliknieciu przycisku zapisz,
czy ktos mi pomoże to usunąć, czy ktoś się spotkał z tym problemem?
Stachu


Jak pobrać bierzącą zawartość edytora tinymce lub fck za pomocą kodu js?

nie chodzi o cos takiego
  1. <?php
  2. //kod js
  3.  
  4. var a=$('nazwapola').value;
  5.  
  6. //koniec kodu js
  7. ?>

bo to jest treść po zapisaniu do bazy, a pozniej pobraniu jej z bazy i wstawieniu w pole, tylko chcę pobrać aktualną treść po edycji w edytorku,
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
sowiq
post
Post #2





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Skoro masz taki sam problem na dwóch zupełnie różnych edytorach WYSIWYG, to odpowiedź jest prosta - błąd jest w innym miejscu.

Proponuję Ci analizę działania, chociażby bardzo prostą - w funkcji, która pobiera wartości pól formularza (i coś tam dalej robi) daj np.:
Kod
var tresc = $('id_elementu').value;
alert(tresc);
Jeśli okaże się, że wartość pobierana jest prawidłowo, to jesteś o krok dalej i możesz sprawdzić poprawność kolejnej funkcji, aż przeanalizujesz wszystko.
Ja bym też zajrzał do konsoli JS (pod FF).

Co do dostawania się do pól, najlepszy sposób jest taki, jaki opisałeś. Są jeszcze podobne, typu:
Kod
<form name="form1" [...] >
   <input name="input1" [...]>
   [...]
</form>


=>
var tresc = document.form1.input1.value;
, ale nie wiem czym one się w praktyce różnią od strony wykonywania rzez przeglądarkę. Jeśli getElementById() nie działa, to powyższa metoda też raczej nie powinna (pod warunkiem, że poprawnie wywołujesz getElementById() winksmiley.jpg ).

PS. Czy tiny_mce nie ma wbudowanych funkcji do obsługi zapisu via Ajax?

Ten post edytował sowiq 25.06.2008, 09:19:41
Go to the top of the page
+Quote Post
stachuf11
post
Post #3





Grupa: Zarejestrowani
Postów: 154
Pomógł: 1
Dołączył: 24.04.2006

Ostrzeżenie: (0%)
-----


kod
  1. <?php
  2. //js
  3. var a= $('nazwapola').value
  4.  
  5. //js
  6. ?>


działa prawidłowo dla innych poł (nie wysiwyg), w wysiwyg po zalodowaniu strony, jak cos sobie napiszesz, i chcesz pobrac wartosc za pomocą js,
to zmiany nie sa widoczne, widziana jest stara wartosc, zawartosc edytora wysiwyg w js pobiera sie inaczej (dla kazdego edytorka inny sposób) nie pamietam jak
a przykłady

  1. <?php
  2. echo javascript_tag(" var a= tinyMCE.activeEditor.selection.getContent({format : 'text'});
  3. ?>


cos tu w symfony chyba nie działają, nie wiem dlaczego

Ten post edytował stachuf11 25.06.2008, 09:56:05
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 02:52