在做專案時需要做字元長度的驗證,需要獲取 ckeditor 中的純文字。
由於 ckeditor 是富文字編輯器,直接用ckeditor.instances.editor.getdata()
得到的是含有html
標籤的內容。但是驗證字元長度並不能包含html
標籤,需要獲取純文字。
ckeditor 提供了gettext
的方法用於獲取純文字,可是得到的卻是整個body
標籤內的內容,網上搜尋了一下大多提供的方法都是一樣。起初還以為是版本原因,api 被廢棄了,到官網一查文件發現並不是。後來偶然中發現,原因是因為我用的是 inline 模式,而非 stand 模式。
如果是 stand 模式,可以使用ckeditor.instances.editor.document.getbody().gettext()
方法獲取純文字。
如果是 inline 模式,使用ckeditor.instances.editor.document.getbody().gettext()
得到的則是整個網頁body
內的內容。inline 模式應使用ckeditor.instances.editor.container.gettext()
方法。
當 stand 模式的實現方式iframe
,document
屬性引用的是iframe
,getbody
後得到的是iframe
中的內容,自然是我們想要的。
而 inline 則不是,是用div
包裹內容,document
屬性所引用的是div
的父document
,也即整個文件。所以當 inline 模式時應使用container
屬性。
從html富文字中提取純文字
其實從html富文字中提取純文字很簡單,富文字基本上是使用html標籤給文字加上豐富多彩的樣式。所以只需要將富文字字串中的 標籤剔除,即可得到純文字。我們可以使用正規表示式,來匹配所有的html標籤,並替換成空字元,如下 html剔除富文字標籤,留下純文字 function get text htm...
django 後台從富文字提取純文字
很多時候我們都會用富文字,比如說在版權區 部落格文章編輯時等等。但是如果我們要做乙個搜尋的功能,去從富文字中查詢關鍵字,就需要將富文字中的文字了。但是 django 並沒有專門函式去做。這個時候我們就需要使用正則或者是提取前端的過濾器 striptags 方法。import re content j...
從html頁面獲取純文字檔案替換其中的內容
通過nsstring裡面的 stringwithcontentsofurl來實現 通過nsstring獲取網頁的源 nsstring webstring nsstringstringwithcontentsofurl nsurlurlwithstring encoding nsutf8stringe...