我想實現CKEditor 4到一個ASP NET網站,我正在努力,但我不知道如何保存編輯的材料從inline editor我知道該怎麼做與舊版本,但我只是不明白這個過程。保存編輯在線文本從CKEditor 4 asp網
我看了論壇...沒有v4論壇。
我看了
在
的文檔....找不到它。
我有一種感覺,這是一個簡單的任務,但我只是不知道如何。
我想實現CKEditor 4到一個ASP NET網站,我正在努力,但我不知道如何保存編輯的材料從inline editor我知道該怎麼做與舊版本,但我只是不明白這個過程。保存編輯在線文本從CKEditor 4 asp網
我看了論壇...沒有v4論壇。
我看了
在
的文檔....找不到它。
我有一種感覺,這是一個簡單的任務,但我只是不知道如何。
您可以通過CKEDITOR.instances.editor1.getData()
獲取您的數據。然後,您可以通過AJAX發送它或將其作爲某個輸入字段的值存儲。定期爲此,請按照以下方法:
CKEDITOR.disableAutoInline = true;
var editor = CKEDITOR.inline('editable');
var savedData, newData;
function saveEditorData() {
setTimeout(function() {
newData = editor.getData();
if (newData !== savedData) {
savedData = newData;
// Send it with jQuery Ajax
$.ajax({
url: 'yourUrl',
data: savedData
});
// Or store it anywhere...
// ...
// ...
}
saveEditorData();
}, 500);
};
// Start observing the data.
saveEditorData();
您也可以觀察到submit event並與您的數據更新一些(隱藏)表單域。
玩得開心!
你是想通過AJAX獲取它還是通過表單發送?例如右上行內編輯區與Lorem存有值可以在舊版本中得到喜歡用簡單的
CKEDITOR.instances.editor1.getData().
在XHTML output example他們有一個簡單的表格,似乎工作,我相信使用(靜態)內聯編輯器也是一樣的。
如果您將元素動態轉換爲內聯編輯器,我會嘗試綁定到提交事件,並在通過所有CKEDITOR.instances
提交循環之前,將其數據隱藏到字段中。至於隱藏字段的命名或識別哪個隱藏字段對應於哪個動態編輯器,您必須弄清楚自己:)
太棒了!在一個答案中開始保存我的數據的兩種好方法!誰還能要求更多! –
這是一個可怕的答案。對數據進行輪詢改變絕對不是Javascript應對事物的方式。這是事件的目的。您確實提到了「觀察提交事件」,但這會讓您的代碼對編輯器所處的上下文進行假設。幸運的是,CKEDITOR類支持一個事件處理機制(http://docs.ckeditor.com/#!/api/CKEDITOR.event),並觸發了許多事件來觀察。 –
@TommiForsström該方法取決於需要什麼樣的實現。 Adam沒有提及他開發的是什麼樣的應用程序,所以我們不能認爲這是錯誤的。他可能需要經常爲「草稿備份」保存編輯器快照,比如Gmail或類似的,不是嗎?嗯? 問題是,** CKEditor不支持內容更改**事件。這是一個非常複雜的事情,將在4.1中得到支持。請參閱:http://dev.ckeditor.com/ticket/9794目前沒有簡單和安全的方法(事件)來確定編輯器內容是否發生了變化,因爲有很多方法可以對其進行修改。 – oleq