2015-01-22 12 views
6

Mümkünse, ckeditor içeriğinin durumu nasıl değişebilir? Örneğin, sayfa açıldığında ckeditor içeriğine aka textarea eklenen bir metin var. Daha sonra bir şey daha yazarım veya bu metnin bir kısmını silerim. Metin değiştiğinde bir değişkeni değiştirmek için kullanabileceğim bir olay var mı?Ckeditor içeriği için olay değişti

Düzenli metin alanları için bu var:

$("input,textarea").on("input", function() { 
    booleanvar= true; 
}); 

bu vardı bir yerlerde olası bir çözüm Testere:

$('.ckeditor').ckeditorGet().on('key', function (e) { 
    //some code 
}); 

denedim ama işe yaramadı. Ve evet biliyorum ckeditor'un textarea'sının sınıf olarak "ckeditor" olduğunu biliyorum, bu yüzden çalışmama sebebi de bu değil.

Bu tür bir örnek olarak ckeditor'un bir tür textchanged olayına ulaşmak için kullanabilirim?

+0

olası yinelenen [CKEditor temel etkinliklerini dinlemek nasıl?] (Http://stackoverflow.com/questions/5721916/how-to-listen-to-basic-events-in-ckeditor) –

cevap

19

Evet, dinleyebileceğiniz kadar kullanışlı change var. Burada Dokümantasyon: http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-change

böylece (sizin editör örneğine değişiklik editor1) gibi örneğin kullanın:

CKEDITOR.instances.editor1.on('change', function() { 
    console.log("TEST"); 
}); 
+2

Muhtemelen işe yaramaktadır, ancak bu yöntem sadece sayfa yüklendiğinde (ki bu durumda henüz ckeditor henüz başlatılamıyor) ve daha sonra çağrılmadığında çağrılır, bunun gerçekleşmesi gerekiyor mu? Ben sadece textarea's class = "ckeditor" –

+1

ayarlayarak ckeditor için textarea yerine ben sadece CKEDITOR.instances.editor1 hemen önce 'CKEDITOR.replace ('editor1'); .on .... 'böylece zaten örneklenmiş olurdu. Sonrasında iyi çalışıyor –

+0

@ MicaelFlorêncio Harika bir şekilde çözdünüz! – Nenotlep

1

O CKEditor ait Onchange için, çok bana yardım olduğunu.

<textarea id="ckeditor_textarea " name="ckeditor_textarea ">Add Yore Data</textarea> 

<script type="text/javascript"> 
var editor = CKEDITOR.replace('ckeditor_textarea ', {}); 
// editor is object of your CKEDITOR 
editor.on('change',function(){ 
    console.log("test"); 
}); 
</script> 
ait