Cela fonctionne:
$("#editorContainer iframe").contents().find("body").text();
qui contiendra uniquement le texte, et aucune des balises HTML.
MISE À JOUR
Il fonctionne sans aucun doute sur la CKEditor demo page. Utilisez Firefox et Firebug, accédez à la console Firebug, et tapez:
$("#demoInside iframe").contents().find("body").text();
La console affichera le texte dans l'éditeur, sans balises html. Assurez-vous que le sélecteur est correct dans votre application particulière. Vous pouvez tester votre sélecteur comme ceci:
$("#demoInside iframe").contents().find("body").length;
Cela devrait être égal à 1. Si c'est 0, votre sélecteur est faux.
MISE À JOUR 2
Encore une fois, mon code est toujours correct, et il fonctionne toujours sur cette page. Vous avez juste besoin du bon sélecteur. Sur la page que vous avez consulté, il s'agit d'un <span>
avec l'identifiant cke_editor1
. Cette page particulière n'utilise pas jQuery, il faut donc du travail supplémentaire pour prouver que cet exemple fonctionne. Installez FireQuery, "jqueryify" la page, puis faites-le dans la console Firebug (notez que vous devez utiliser jQuery
et non $
. C'est comme ça que fonctionne FireQuery).
jQuery("#cke_editor1 iframe").contents().find("body").text();
En bref, assurez-vous que vous avez le sélecteur droit d'accéder à votre iframe. Si vous créez votre CKEditor à partir d'un <div>
ou d'un <textarea>
n'est pas important. Tant que vous pouvez sélectionner le que CKEditor injecte dans le DOM, vous pouvez utiliser .contents().find("body").text()
pour obtenir le texte de cette iframe. Avez-vous testé votre sélecteur jquery pour voir si .length == 1
?
J'ai essayé de remplacer #editorContainer par # editor1 car c'est l'identifiant de textarea, mais ça ne marche pas non plus. –
Demo remplace DIV, tandis que mon code remplace TEXTAREA. Pourriez-vous me dire quel sélecteur utiliser sur la page d'exemple de CKEditor: http://nightly.ckeditor.com/latest/ckeditor/_samples/replacebyclass.html? Cela m'aiderait à déterminer ce que je devrais utiliser dans mon code. Merci. –
Je sais que cette question est ancienne, mais je suis curieux de savoir ce qui sélectionne le val() aussi, parce que le fichier .text() tire juste le texte mais pas le format html ou le formatage. – Trip