由于项目需要,在网上找了个富文本编辑框wangEditor,抱着试一试的态度用了一下,原以为这款个人开发维护的插件会有不少bug,使用之后经过我们测试人员全方位的测试检验,基本符合需求,并且较之前使用的simditor包含了更多的小功能。

wangEditor

wangEditor 是一款开源免费的基于javascript和css开发的html富文本编辑器。从下面的预览图可以看到增加了代码块、地图,插入表格等一些不常用、但正好是我们需要的小功能,而且有Demo和比较完整的文档,上手很快,但对于我这样的业余前端来说使用中还是有一些需要注意的地方。

初始化

使用前首先在页面添加一个id=content的编辑器div元素(textarea也可以),然后使用new wangEditor(‘content’)对其进行初始化即可,但是需要注意的是初始化js放在body的最后才能生效,如下所示,不知是何原因。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

joylink后台

请输入内容...

保存

//---- 初始化富文本编辑框插件 ----

window.wangEditor.$body = $('body');

var editor = new wangEditor('content');

editor.config.uploadImgUrl = '/jlNav/uploadImg'; //controller的请求地址

editor.create();

图片上传

经过第一步初始化后大多数功能已经可以使用,但是图片上传只能通过url形式,还不能上传本地图片,因为本地图片是要传到服务器存储的,需要后台的配合。wangEditor里只需要配置一下图片上传请求的url如下所示,然后就可以看到编辑框图片上传的位置出现了选择本地图片的选项。

editor.config.uploadImgUrl = ‘/jlNav/uploadImg’; //controller的请求地址

配置完编辑器后,本地图片上传时,编辑器便会向你配置的url发送一个post请求如下,在相应的controller里对文件进行上传处理返回该图片的url即可。

Request URL://jverson.com/jlNav/uploadImg

Request Method:POST

——WebKitFormBoundarybWoD7tBsuqM8uVkn

Content-Disposition: form-data;

name=”wangEditorH5File”;

filename=”8724976127960344.jpeg”

Content-Type: image/jpeg

对应 /jlNav/uploadImg 请求的controller在springMVC环境下代码如下所示,同时可以支持图片的form提交、复制粘贴、拖拽上传等多种上传方式,不同方式对应的Content-Disposition中的name不同,在controller中处理的时候需要注意。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19@ResponseBody

@RequestMapping(value = "/uploadImg", method = {RequestMethod.POST}, produces = {"application/json;charset=UTF-8"})

public String uploadImg(HttpServletRequest request, @RequestParam(value = "wangEditorH5File", required=false) MultipartFile formFile,

@RequestParam(value = "wangEditorPasteFile", required=false) MultipartFile pasteFile,

@RequestParam(value = "wangEditorDragFile", required=false) MultipartFile dragFile){

MultipartFile file = (formFile!=null?formFile:pasteFile!=null?pasteFile:dragFile!=null?dragFile:null);

String imgUrl = null;

if (file != null) {

try {

imgUrl = fileUpDownUtil.uploadImgWithDFS(file.getInputStream());

if (StringUtils.isNotBlank(imgUrl)) {

imgUrl = fileUpDownUtil.getDFSDefaultImgURI(imgUrl);

}

} catch (Exception e) {

e.printStackTrace();

}

}

return imgUrl;

}

附注

作为个人开发维护的一款功能完善的实用插件,我相信作者付出了大量的精力和时间,感谢作者的开源精神,作为免费用户和受益者,不强制但应该给予作者小小的捐赠,不成敬意,但这是向劳动和分享精神的一种致敬。

wangeditor 请求头_富文本编辑框wangEditor相关推荐

  1. wangeditor 请求头_跨域上传 · wangEditor2使用手册 · 看云

    **首先,wangEditor的跨域上传已经不再支持 IE8.9 浏览器.** ---- IE10 及以上浏览器在使用跨域上传时,需要服务器端的配合,对`response`设置以下`head`信息: ...

  2. vue 封装调用 wangeditor v4.0富文本编辑框组件 v-model

    背景 本机的环境使用的vue的脚手架,用到了富文本编辑框,所以选择将wangeditor封装为组件调用 wangeditor官网:https://www.wangeditor.com/ 在vue的项目 ...

  3. tinymce富文本编辑框使用

    引用 <link rel="stylesheet" href="./tinymce/skins/ui/oxide/skin.min.css" />& ...

  4. qtabwidget设置tab高度_VC|富文本编辑框CRichEditCtrl的字体与段落设置

    将富文本编辑框设置为2.0,关联一个control变量m_textblock: 1 字体设置 富文本编辑框关于字体设置的成员函数: BOOL CRichEditCtrl::SetSelectionCh ...

  5. 【学习记录贴】Vue+Element-UI富文本编辑框及插入图片

    本贴会涉及以下几个技术点: Vue+Element-UI实现富文本编辑框,以及文本编辑框中事件拦截.插入图片 Element-UI限制上传图片后,隐藏上传按钮:官网上是没有这个方法的,可以通过上传到指 ...

  6. MFC富文本编辑框richedit插入图片ole对象问题

    MFC富文本编辑框richedit插入图片ole对象问题 学习了三四天的一点成果,如果有不对的地方还请指出. 目前发现有两种方法来向richedit中插入ole对象: 1.直接粘贴,然后使用回调函数来 ...

  7. edui 富文本编辑_富文本编辑器wangEditor添加本地上传视频功能

    最近做一个考试系统,编辑题目要用到富文本编辑,要求可以添加图片.视频和pdf.此前项目中用的都是wangEditor,使用的时候发现只可以上传本地图片,视频只能添加链接,找了其他插件,也没发现比较好用 ...

  8. 富文本编辑:wangEditor使用教程

    文章目录 前言 一.官方文档 二.样式问题 前言 孩子最近做的一个项目需要用到富文本编辑,本来想用github上的react-draft-wysiwyg资源,但是发现出现了版本问题,React更新到了 ...

  9. 基于bootstrap的富文本框——wangEditor【欢迎增加开发】

    先来一张效果图: 01. 引言 老早就開始研究富文本框的东西,在写完<深入理解javascript原型与闭包>之后,就想着要去做一个富文本框的插件的样例.

最新文章

  1. python中object转str_python的id()函数介绍 python怎么将objectid转为str
  2. 趣链 BitXHub跨链平台 (8)交易验证
  3. python if和while的区别_python基础--while循环和if判断、基本运算符
  4. WebLogic 12c与Oracle Database 12c的集成
  5. web测试,App测试,小程序测试区别
  6. matlab显示图像的横纵坐标
  7. 苹果手机连接电脑服务器传文件,实用!三种iPhone与Windows电脑互传文件操作技巧,...
  8. python和r语言对比_Python和R语言之分析对比
  9. STM32F407音乐播放器设计WM8978使用
  10. Error:java.lang.RuntimeException: Some file crunching failed, see logs for details
  11. 用Python发送微信消息给好友
  12. 禅道开源版安装 - windows
  13. 计蒜客 难题题库 205 图书ISBN号码
  14. 惠民“大数据”强化共享发展
  15. 不同类型的 BPM 软件与客户
  16. 一个短线日内交易策略 ——R-Breaker
  17. ##求助!Python编程从入门到实践 外星人飞船问题
  18. buu [SWPU2019]ReverseMe1 wp
  19. 韩国访问学者签证D-2-5材料准备及签证流程
  20. 从crc32到linux内核实现

热门文章

  1. java 三角形面积公式_java中计算任意三角形面积。
  2. SecureCRT的使用教程
  3. 开发者利用树莓派打造专业摄影机
  4. 4.绘制统计图形——条形图
  5. 美甲店适合的会员管理系统
  6. QLExpress初探
  7. cookie登录(输入cookie登录)
  8. 用Python绘制螺旋文字
  9. 【pwnable.kr】Toddler‘s Bottle-[bof]
  10. python安装gdal库