2015-01-06 7 views
6
  1. Ich habe ein Datum aus der Datenbank.
  2. In meiner Js-Datei möchte ich den Wert meines CKEditor-Texteditors ändern.
  3. Mein Wert ist Roh-HTML.
  4. Ich möchte diesen Rohwert in einen leeren CKEditor Texteditor geschrieben werden.

Ich habe versucht, diese bekam aber eine nicht definierte Funktion Fehler die ganze Zeit:CKEditor Insert HTML

CKEDITOR.instances.myEditorID.insertHtml('<p>This is a new paragraph.</p>'); 
CKEDITOR.instances.myEditorID.setData('<p>This is the editor data.</p>'); 

ich diese auch versucht, aber immer noch Fehler nicht definierte Funktion:

CKEDITOR.instances.YOUREDITORID.updateElement(); 
alert(document.getElementById('YOUREDITORID').value); 

Statt myEditorID ich versuchte ‚editor ',' Editor1 ',' Editor2 'funktioniert aber immer noch nicht für mich.

Vielen Dank im Voraus.

--- --- Aktualisierung

Dies ist der HTML-Code meines ckeditor Texteditor:

<textarea id="myEditorID" name="myEditor"></textarea> 
<script type="text/javascript"> 
    $(function() { 
     var myEditor = $('#myEditorID'); 
     myEditor.ckeditor({ 
     height: 200, 
     extraPlugins: 'charcount', 
     maxLength: 2000, 
     toolbar: 'TinyBare', 
     toolbar_TinyBare: [ 
      ['Bold','Italic','Underline'], 
      ['Undo','Redo'],['Cut','Copy','Paste'], 
      ['NumberedList','BulletedList','Table'],['CharCount'] 
     ] 
     }).ckeditor().editor.on('key', function(obj) { 
      if (obj.data.keyCode === 8 || obj.data.keyCode === 46) { 
       return true; 
      } 
      if (myEditor.ckeditor().editor.document.getBody().getText().length >= 2000) { 
       alert('You have reached the maximum char length'); 
       return false; 
      } 
     }); 
    }); 
</script> 
+3

Sie mit einem Debugger ausgeführt werden müssen, um zu sehen, was nicht definiert ist. –

+0

funktioniert Ihre Längenbeschränkung? Wenn Sie 2000 Zeichen treffen, erhalten Sie diese Nachricht? 'Sie haben die maximale Länge erreicht ' – roryok

+0

@roryok ja es funktioniert. –

Antwort

7

Statt myEditorID ich versuchte 'Editor', 'editor1', 'Editor2' aber immer noch funktioniert nicht für mich.

Sie müssen den HTML-Code Ihrer Seite betrachten und sehen, was das ID-Feld für Ihren Editor ist. Es wird so etwas wie diese

<textarea id="my_editor"></textarea> 

sein, dass id-Attribut ist das, was hier gehen muss

CKEDITOR.instances.my_editor.insertHtml('<p>This is a new paragraph.</p>'); 
+0

Ich weiß nicht, warum Leute abstimmen, aber ich habe genau das geschrieben, was du gesagt hast. Immer noch nicht funktioniert, ich werde das lösen und die Antwort aufschreiben. –

+0

können Sie den HTML-Code für Ihren Editor veröffentlichen? – roryok

+0

Ich habe den Beitrag aktualisiert. –