在django中集成markdown文本框

首先需要下载开源组件:http://editor.md.ipandao.com/,可能需要挂梯子。

百度网盘:

链接:https://pan.baidu.com/s/1D9o3P8EQDqSqfhAw10kYkw

提取码:eric

1.在html代码中生成一个div,id=editor
html 复制代码
<div class="form-group">
    <label for="{{ field.id_for_label }}">{{ field.label }}</label>
        <div id="editor">
            {{ field }}
        </div>
    <span class="error_msg">{{ field.errors.0 }}</span>
</div>

这里用的是 modelform, 其中该字段 field 组件是 textarea 格式。

2.引入 css 和 js
html 复制代码
<link rel="stylesheet" href="{% static 'plugin/editor-md/css/editormd.min.css' %}">
javascript 复制代码
<script src="{% static 'plugin/editor-md/editormd.min.js' %}"></script>
3.写个函数
javascript 复制代码
function initEditorMd() {
    editormd('editor', {
        placeholder: '请输入内容',
        height: 500,
        path: '{% static 'plugin/editor-md/lib/' %}', 这一行是给出lib目录,不然会显示不出来
    })
}

这个 editor 就是第一步定义的 id。

4.修复全屏展示效果

这个直接在当前页面的css目录里面写上就好。

css 复制代码
.editormd-fullscreen {
    z-index: 1001;
}

ss

.editormd-fullscreen {

z-index: 1001;

}

复制代码
相关推荐
打工仔折腾 AI29 分钟前
多台服务器日志分散难查?用Promtail+Loki+Grafana搭建集中检索平台
服务器·人工智能·后端·python·性能优化·django·grafana
铅笔小新z1 小时前
【stm32】理解弱引用
javascript·stm32·嵌入式硬件
凤城老人1 小时前
从PyQt6到Electron:一款英语字帖生成器的跨平台重构实战与踩坑全记录
javascript·重构·electron
星栈12 小时前
pnpm 12 升级实测
前端·javascript
Ai-_Man13 小时前
您您这可以把Microsofat Copilot的多个会话比如说。左侧的多个会话一次性导出吗?不是单条会话里面的多次会对话。AI导出鸭
javascript·人工智能·ai·小程序·电脑·copilot
Bruce_Liuxiaowei16 小时前
网页版 DeepSeek “harness desktop“ WebGL 上下文创建失败排查实录
开发语言·javascript·webgl
小凯在掘金17 小时前
为什么箭头函数不能作为构造函数?
前端·javascript
可乐鸡翅yeah_17 小时前
网页端 M3U8 播放器性能监控,怎么看播放卡顿指标
javascript·ffmpeg·音视频·safari·m3u8
可乐鸡翅yeah_17 小时前
M3U8 防盗链 URL‑Token 签名,新手开发实操避坑
开发语言·javascript·ios·音视频·safari
2603_9658966218 小时前
JS原型与原型链|对象继承与实例底层原理
开发语言·javascript·原型模式