2012-11-14 33 views
1

CKEditor的whitelist plugin向dataProcessor dataFilter和htmlFilter添加了清理規則。如果某個元素不在白名單中,則將其與任何子節點一起刪除:使用CKEditor白名單插件,我如何保留/宣傳禁用標籤的子節點?

// console.log("Remove " + element.name); 
// The element (as well as any content or children) is removed. 
return false; 

但是,我想保留任何內容/子項。基本上,我想這樣的:

This is <u>really</u> important! 

要成爲這樣的:

This is really important! 

不是這個:

This is important! 

回答

3

變更線的whitelist/plugin.js 37。而不是返回false,什麼刪除整個元素,寫:

delete element.name;

這將刪除元素的標籤,但會留下的內容。

+0

這很好。我不得不記得在下面的處理屬性的塊中添加一個if(typeof(element.name)!='undefined'){}'。只是補充一下,以防萬一它會幫助其他人。 – Alex

+0

對,我忘了提及你可以加早回或這種情況。或者甚至更好 - 在刪除它之前緩存元素的名稱,稍後在該函數中檢查此名稱。 – Reinmar

相關問題