javascript - 包装清单
使用 tinyMCE 标记
问题描述
我希望将我的<ul>
项目内容包装在 <p>
标签内。所以现在 TinyMCE 正在创建这样的列表:
<ul>
<li>Demo</li>
</ul>
当我在寻找:
<ul>
<li><p>Demo</p></li>
</ul>
这在 TinyMCE 中可行吗?
解决方案
有几种方法可以解决这个问题,例如扩展列表插件以执行您想要的操作或在使用它之前修改生成的标记(发送到服务器或其他)。
第一个选项的主要问题是您将不再能够轻松更新插件,因为您的版本将不再是“官方”版本。这对你来说可能是也可能不是问题。
第二个选项可能很简单:
const temp = document.createElement('div');
temp.innerHTML = /* your tinymce output */;
const listItems = temp.querySelectorAll('li');
listItems.forEach(li => {
const p = document.createElement('p');
p.textContent = li.textContent;
li.textContent = '';
li.appendChild(p);
});
return temp.innerHTML; // your modified output
代码未经测试,但应该给你一个大致的想法。我会把它放在一个wrapLiContents
函数中,并将它作为表单提交的一部分运行(或者你对输出所做的任何事情)。
推荐阅读
- javascript - 在 JS 上更改字体系列:无法设置未定义的属性
- jquery - 如何仅在选项时使用Next按钮验证下拉下的用户输入?
- javascript - 如何在 jquery 中将 h1 标签添加到 $('a')
- c++ - 如何确定对象想要的对齐方式
- python - 从dict构造一个嵌套的defaultdict?
- continuous-integration - 如何根据来自任何分支的合并请求触发 gitlab-ci 中的作业以进行开发/主控?
- amazon-s3 - 预计将解析 SNOWFLAKE DATAWAREHOUSE 中的“TRANSIENT_STAGE_TABLE”列时到达记录末尾
- python - 如何在 Matplotlib 中使用不同的主要网格间距来做 xticklabel?
- c++ - 将参数传递给 GNUPLOT 配置文件
- here-api - 矩阵路由失败,没有错误消息