问题 #698💬 已回答提出于 2018年1月2日作者 alimajed930 个反应

Editor.getSelected().toHTML() 不一致

快速解答作者 artf

在你的“html-block”组件内为用户代码创建一个新属性(例如“custom-code”),并用“editor.getSelected().get('custom-code')' 获取它

阅读下方完整回答 ↓

问题

大家好,

我创建了一个新的组件类型,“html-block”,这是一个可以添加HTML代码的组件。我在工具栏上加了一个“编辑”按钮,方便用户编辑新增的HTML代码。为了在模态中显示组件的 html 代码,我使用函数 'editor.getSelected().toHTML()';

问题是,有时返回的代码示例是:“<div><h1>h1</h1></div>”(这正是我需要的,因为我需要的是用户最初添加的完全相同的代码),有时则返回类似“<div id='135'><h1>h1</h1></div>'(自动添加ID)。 我也试过用 'editor.getSelected().em.getHtml()',但还是遇到了同样的问题。

我该如何解决这个问题,并获取用户输入的确切HTML代码?

提前感谢大家。

回答(3)

artf2018年1月4日

在你的“html-block”组件内为用户代码创建一个新属性(例如“custom-code”),并用“editor.getSelected().get('custom-code')' 获取它

alimajed932018年1月4日

这解决了我的问题。谢谢。

lock[bot]2019年9月18日

由于关闭后没有近期活动,该帖子已被自动锁定。请为相关漏洞开启新一期。

相关问答

通过相似的问题讨论继续研究。

问题 #1762

当我们用 editor.getHtml() 获取 HTML 时,图片不会改变

你好@artf 我正在用grapes.js来做我的网站建设工具,把它集成到我的网站里。 当我双击任意图片时,资产管理器会打开,我可以从资产管理器中选择图片。 问题是我设置了条件,比如一旦用户选择asset-manager里的任何图片,我会把'img'标签替换成'div'标签,并...

3 个回答更新于 2020年2月22日

问题 #1817

在编辑器渲染块时更改 HTML 内容

你好@artf 我有一个区块进入了区块管理器 和上面的脚本一样,我希望在该块渲染到界面的同时添加动态HTML内容。 我知道我不需要改变DOM。但我需要用模型来更改,但我不知道怎么用 ID/类别的模式来更改。 你能帮我吗?我该怎么实现?

3 个回答更新于 2020年2月22日

问题 #894

添加自定义属性

大家好, 我正在创建新块,使用以下方法: '编辑。BlockManager.add(blockId, { 标签:blockLabel, 内容:{...blockContent, “customAttribute”: “value”}, 属性:blockAttributes})'...

3 个回答更新于 2019年9月18日

问题 #1121

<Tbody> 在里面<Table>

你好@artf, 我创建了一个新组件,地址是 'tagName = 'table''。当选择并点击我创建的工具栏选项时,会打开一个新的模态,用户提交后,应该会在该模块中添加一些内容。我使用的是 'editor.getSelected().get('components').ad...

3 个回答更新于 2019年9月17日

与此问题匹配的付费插件

根据问题关键词和标签相关性精选,助你更快交付。

查看全部插件

正在加载付费插件推荐……

免费方案

在以下平台查看开源 GrapesJS 插件: GitHub 或在我们的免费目录中快速搜索。

浏览免费插件 →
高级方案

高级插件提供支持、定期更新和生产就绪的功能——为你节省数天的集成工作。

浏览高级插件 →

相关教程

关于同一主题的深入指南。

全部教程 →

浏览插件分类

直接跳转到市场上的插件分类页面。