Récupérer le contenu d'un textarea depuis une instance CKEDITOR
Bonjour ici !
Petit up du sujet, je vous remercie par avance pour l'aide que vous m'apporterez.
J'ai un petit problème pour récupérer le texte présent dans mon champs textarea tout ce passe bien sans Ckeditor
mais dès que je le met il m'est impossible de récupérer le contenu, j'ai eu beau essayer toutes les solutions trouver
à droite à gauche, mais je ne m'en sort pas :(
le formulaire :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
<form name="formulaire" id="monForm" action="<? echo $rootpath; ?>post.php?action=repondre&t=331" method="post">
<textarea cols="80" rows="8" id="message" name="message"></textarea>
<script type="text/javascript">
var editor = CKEDITOR.replace( 'message',
{
toolbar: 'MyToolbar',
height: '600px',
resize_enabled: false
});
</script>
<input type="submit" class="btn btn-success" name="envoyer" value="Envoyer" /> |
et le jquery :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| $(document).ready(function() {
// Lorsque je soumets le formulaire
$('#monForm').on('submit', function(e) {
e.preventDefault(); // J'empêche le comportement par défaut du navigateur, c-à-d de soumettre le formulaire
var $this = $(this); // L'objet jQuery du formulaire
// Je récupère les valeurs
//var message = $('#message').val(); // marche sans ckeditor
//var message = editor.getData();
var message = CKEDITOR.instances['message'].getData();
// Je vérifie une première fois pour ne pas lancer la requête HTTP
// si je sais que mon PHP renverra une erreur
if(message === '') {
alert('Les champs doivent êtres remplis');
} else {
// Envoi de la requête HTTP en mode asynchrone
$.ajax({
url: $this.attr('action'), // Le nom du fichier indiqué dans le formulaire
type: $this.attr('method'), // La méthode indiquée dans le formulaire (get ou post)
data: $this.serialize(), // Je sérialise les données (j'envoie toutes les valeurs présentes dans le formulaire)
success: function(html) { // Je récupère la réponse du fichier PHP
alert(html); // J'affiche cette réponse
}
});
}
});
}); |
Petite précision j'utilise CKEDITOR 4 ! Merci par avance =)