CKEditor: Personaggi strani dopo l'invio di ajax
Domanda
Sto usando Ajax per raccogliere il contenuto di CKEditor e inviarlo al server. Una volta che lo guardo dopo che è stato inviato, tutti i tag html & Lt; e > sono stati convertiti nelle loro entità html. Questo non è quello che voglio, poiché ovviamente devo preservare l'HTML.
C'è qualcosa che ho fatto di sbagliato?
Soluzione 2
Alla fine mi sono reso conto che il mio server non stava salvando i dati su UTF-8 anche se ajax lo stava inviando in questo modo. Quindi, ho risolto questo problema e i dati sono stati salvati correttamente.
Altri suggerimenti
Un paio di domande:
- Quale libreria AJAX stai usando?
- Quale metodo stai usando per recuperare il contenuto da CKEditor?
Uso jQuery + validate (plugin di validazione del modulo) per i miei invii di moduli.
L'area di testo a cui è associato CKEditor è denominata body .
Per qualche strano motivo quando ho inviato il modulo, il contenuto non è stato inviato affatto. Esaminando l'HTML ho scoperto che l'area di testo non veniva popolata da CKEditor (non chiedermi perché).
Quello che ho fatto è stato solo prima dell'invio, afferrare manualmente i dati da CKEditor e inserirli nell'area di testo. Una sola riga di jquery dovrebbe essere sufficiente.
$( '#body' ).val( CKEDITOR.instances.body.getData() );
E quindi procedere con l'invio del modulo normalmente. jQuery ha un ottimo metodo di serializzazione dei dati - una funzione chiamata serialize () , che uso per convertire i dati dell'intero modulo in una stringa. Alla fine di PHP, questa stringa viene convertita automaticamente in membri dell'array $ _POST .
Dovresti provare lo stesso approccio e vedere se funziona per te.
Se sei ancora bloccato, pubblica qui il tuo codice.
Saluti, m ^ e
Corretto è impostare in config this entità: false