2013-09-30 23 views
9
<textarea cols="50" id="txt" contenteditable="true" name="editor1" runat="server" rows="10"></textarea> 
<script type="text/javascript" src="css-js/ckeditor.js"></script> 
<script type="text/javascript"> 
    CKEDITOR.replace('txt', {      
    });  
</script> 

uzyskać to zaważyć na JS:CKEditor getEditor() Błąd, jak go naprawić?

TypeError: Cannot call method 'getEditor' of undefined

+1

najpierw upewnij się, że dołączasz CKeditora js na swojej stronie !! –

+0

oczywiście dodałem, po prostu zapomniałem napisać tutaj przepraszam – Bip

+0

jakie przeglądarki wypróbowałeś? wypróbuj go w kilku przeglądarkach. – Soosh

Odpowiedz

3

Korzystając

CKEDITOR.appendTo('txt'); for DOM elements 

CKEDITOR.replace('textarea'); for textarea 

Ok koleś spróbować to również

funkcje appendTo i zastąpić to wszystko znajduje się w themedui.js pliku

spróbuj dodać osobno, tutaj jest link

http://docs.ckeditor.com/source/ckeditor.html#CKEDITOR

+0

Próbowałem obu, ale to nie działa Mam ten sam błąd. Dzięki – Bip

11

Przede wszystkim contenteditable="true" tag jest całkowicie nieważne i nieaktualne w Twoim przypadku. Taki atrybut jest istotny dla inline instances only, a jako <textarea> nie jest edytowalny (treść), you don't need it.

W każdym razie (nawet jeśli błędnie działa) twój kod działa na mnie jak urok (fiddle). Jako słowa wyjaśnienia, błąd widać jest produkowany, gdy nie ma elementu o id przekazane CKEDITOR.replace(), tj: (? Asynchroniczny pracuje)

<textarea id="foo"></textarea> 
<script type="text/javascript"> 
    CKEDITOR.replace('bar'); // <textarea> is #foo, error will be thrown 
</script> 

Upewnij się, że DOM jest ważna i <textarea> istnieć gdy CKEDITOR.replace nazywa .

+0

Kod w odpowiedzi nie działa, ponieważ ** textarea nie ma identyfikatora **. – Reinmar

Powiązane problemy