首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CKEditor5获取纯文本

CKEditor5获取纯文本
EN

Stack Overflow用户
提问于 2017-11-29 19:48:02
回答 2查看 3.9K关注 0票数 3

我知道如何使用CKEditor5应用程序接口获取数据,正如文档和另一个SO post中提到的那样。

但是,我如何才能获得纯文本?我尝试跟踪,但没有返回任何结果。

代码语言:javascript
复制
alert($(editorObj.element).val());

有趣的注意:如果TextArea与CKEditor绑定,则即使下面的代码也不会返回任何内容

代码语言:javascript
复制
alert( $("#editor").val());

但是,如果我不将TextArea与CKEditor绑定,那么它就可以正常工作。

任何解决方案或反馈都将受到高度赞赏。

EN

回答 2

Stack Overflow用户

发布于 2017-11-30 17:22:25

CKEditor 5没有公开这样的方法,但是您可以使用@ckeditor/ckeditor5-clipboard包的一个实用程序- viewToPlainText()

当用户从编辑器复制一些内容时,剪贴板功能使用它来设置剪贴板中的text/plain风格。

要使用它,你需要使用源代码中的CKEditor 5(因为这个函数没有公开)。您可以在CKEditor 5 Framework's Quick start指南中了解到这一点。

您可以使用此方法将整个编辑器的视图字符串化为字符串:

代码语言:javascript
复制
import viewToPlainText from '@ckeditor/ckeditor5-clipboard/src/utils/viewtoplaintext';
import ClassicEditorBuild from '@ckeditor/ckeditor5-build-classic/src/ckeditor';

ClassicEditorBuild
    .create( element )
    .then( editor => {
        // Will get the stringified content.
        console.log( viewToPlainText( editor.editing.view.getRoot() ) );
    } )
    .catch( error => {
        console.error( error.stack );
    } )
票数 4
EN

Stack Overflow用户

发布于 2017-11-29 20:34:41

好的,我找到了一个变通方法:

代码语言:javascript
复制
var plainText = $(editorObj.getData()).text();

在我们得到一个合适的解决方案或库公开的方法之前,我希望这个变通方法能起作用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47552095

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档