原文網址:http://king971119.blogspot.com/2011/08/javascript-fckeditor-ckeditor.html

以下轉載原文
------------------------------------------------------------------------

如何用 Javascript 取得和設定修改 Fckeditor (CKEditor) 的值

 
假設 CKEditor 欄位名稱叫做 body,那麼當阿舍想用 Javascript 來取得 CKEditor 裡的 HTML 碼時,就可以用下面方式來取得,傳回值會是一個字串: 
1
var ckeditorString = CKEDITOR.instances.body.getData();

相反的,如果要用 Javascript 來塞值到 CKEditor 裡去,那就用 setData() 的方式來做,做法如下: 
1
CKEDITOR.instances.body.setData( '<b>Hello World !</b>' );

取得編輯器中HTML内容 
1
2
3
4
5
6
7
function getEditorHTMLContents(EditorName) {  
 
    var oEditor = FCKeditorAPI.GetInstance(EditorName);  
 
    return(oEditor.GetXHTML(true));  
 
}

取得編輯器中文字内容 
1
2
3
4
5
6
7
function getEditorTextContents(EditorName) {  
 
    var oEditor = FCKeditorAPI.GetInstance(EditorName);  
 
    return(oEditor.EditorDocument.body.innerText);  
 
}

修改編輯器中内容 
1
2
3
4
5
6
7
function SetEditorContents(EditorName, ContentStr) {  
 
    var oEditor = FCKeditorAPI.GetInstance(EditorName) ;  
 
    oEditor.SetHTML(ContentStr) ;  
 
}


//在當前頁面獲得 FCK編輯器 
var Editor = FCKeditorAPI.GetInstance('InstanceName'); 

//从 FCK 編輯器的彈出窗口中獲得FCK編輯器 
var Editor = window.parent.InnerDialogLoaded().FCK; 

//以框架夜面的子框架中取得其他框架中FCK編輯器 
var Editor = window.FrameName.FCKeditorAPI.GetInstance('InstanceName'); 

//以頁面彈出視窗中獲得父窗口FCK編輯器 
var Editor = opener.FCKeditorAPI.GetInstance('InstanceName'); 

//抓取 FCK 編輯器的內容 
oEditor.GetXHTML(formatted); // formatted 为:true|false,表示是否按HTML格式取出 
也可用: 
oEditor.GetXHTML(); 

//設定 FCK 編輯器的內容 
// 第二個參數為:true|false,是否以所得即所得的方式設定內容。此方法通常用在設定初始值或表單重設oEditor.SetHTML("content", false); 

//將內容插入 FCK 編輯器: 
oEditor.InsertHtml("html"); // "html"為HTML文本 

//檢查 FCK 編輯器內容是否有改變 
oEditor.IsDirty();

 

創作者介紹

右腦 想去環遊世界

yoonow 發表在 痞客邦 PIXNET 留言(0) 人氣()