2012-01-09 12 views
8

Sto usando CKEditor ver.3.6 nella mia applicazione MVC.Sostituisci il contenuto selezionato in ckEditor con nuovo contenuto usando javascript

La mia esigenza è quella di aggiornare il testo selezionato con il nuovo testo nel CKEditor. Ho potuto scoprire il metodo editor.getSelection() getSelectedText().; per ottenere il testo selezionato dall'editor. Ho bisogno di aggiungere un po 'tag con il testo selezionato quando si preme un pulsante di barra degli strumenti e aggiornare il contenuto selezionato utilizzando JavaScript.

Per esempio:

contenuti nel CKEditor è

 
<span>Edit content in the editor</span> 

e ho scelto la parola “Editor” da CKEditor. Devo aggiornare la parola selezionata “editore” con “CKEditor” utilizzando codice javascript.

Si prega di suggerire una soluzione adeguata.

risposta

3

Sembra a me dalla documentazione come il seguente dovrebbe funzionare (non testata):

editor.insertText("ckEditor"); 
+0

Inoltre, il sostituito l'elemento dovrebbe essere selezionato. . Editor.getSelection() selectElement (elemento); – efeyc

+0

@efeyc come si ottiene 'elemento'? –

4

Usare questa funzione in caso onclick di un pulsante.

function Replace() 
{ 
    //after selecting the text in the editor 
    //get text to replace;  
    var repStr=$("#repTxt").val();   
    editor.insertHtml(repStr);  
} 

Acclamazioni Sunil Raj

1

Sia editor.insertText() e editor.insertHtml() dovrebbe funzionare, ma è necessario assicurarsi che l'editor è pronto prima di tentare di aggiornare il testo:

var editor = CKEDITOR.replace('editor'); 

editor.on('instanceReady', function(){ 
    editor.insertHtml('...'); 
}); 
Problemi correlati