随着网站信息发布内容越来越多,越来越重视美观,富文本编辑就是不可缺少的了,众多编辑器比较后我选了百度的ueditor富文本编辑器。

百度ueditor富文本编辑器分为两种一种是完全版的ueditor,另一种是ueditor的迷你版umeditor。

ueditor富文本编辑器的功能很强大,使用中会在其目录下面会产生大量的数据,本人认为应将ueditor放置在根目录下,后期维护中谨慎对待。

一、我们先讲完全版的ueditor。

1、建立数据模型。

2、建立对应的控制器和视图。

3、访问http://ueditor.baidu.com/website/download.html 进入开发版的下载页面,下载.net UTF-8版本,现在最新的是1.4.3.3版。

4、下载后解压,将文件夹更名为ueditor,文件夹里面就是源程序。

5、将此ueditor文件夹复制到自己MVC项目的根目录中。

6、打开需要改造的Create视图和Edit视图,相关的操作方式是完全一样的。

7、找到需要改造的地方,将原来的注释掉或者删除掉。

通常视图自动生成的是@Html.EditorFor(model => model.文档内容, new { htmlAttributes = new { @class = "form-control" } })

现在直接用 @Html.TextAreaFor(model => model.文档内容,htmlAttributes:new { @id="neirong"}) 替换掉。

8、然后找到底部的脚本代码@Scripts.Render("~/bundles/jqueryval")

替换为@Scripts.Render("~/bundles/jqueryval", "~/ueditor/ueditor.config.js", "~/ueditor/ueditor.all.js")

9、紧接着上面的代码,在下面写如下代码,这里我没有做任何配置设置,因为我的全站不存在第二种样式,所以我直接在后面的ueditor配置文件中设置了。

官方示例中建议使用工厂方法getEditor创建和引用编辑器实例,如果在某个闭包下引用该编辑器,直接调用UE.getEditor('editor')就能拿到相关的实例

<script type="text/javascript">

var nreditor = UE.getEditor('neirong'); 
</script>

下面是做了参数配置的

<script type="text/javascript">
var editorOption = {
initialFrameWidth: 784,
initialFrameHeight: 400
};
var editor = new baidu.editor.ui.Editor(editorOption);
editor.render('neirong');
</script>

10、现在运行就应该能看到富文本编辑效果了,但是这样还不行,很多功能还不正常需要对ueditor进行。

11、打开~/ueditor/ueditor.config.js。

再往下面的就是配置的参数了,文件上方的官方提示已经说了“所有被注释的配置项均为UEditor默认值。”

所以根据自己的需要,删除参数前面的“//”就行了,一定不要把后面的逗号也删除了。

12、配置config.json。打开~/ueditor/net文件夹下的config.json文件。

如果是按照我的实施规则来的话,此文件不用动。如果有变动的话需要修改图片访问前缀 "imageUrlPrefix": "/ueditor/net/"。如果配置错误的前缀路径,能正确上传图片等,但是不能在线编辑、不能访问,图片就显示不正常。验证是否正确的方法是在富文本编辑器里上传个图片,如果能显示此图片则正常。

同时,也可以配置其他项。例如"imageMaxSize": 2048000, /* 上传大小限制,单位B */  等等。

13、然后在相关视图的控制器中Create和Edit 的httpPost方法中加入 [ValidateInput(false)]属性。 然后数据库将html标签保存到数据库中。如果不加入此注解,表单将不能正确的提交,并出现 ”潜在的风险的Request.Form值。

14、在系统自动创建的Detials操作方法的视图中找到对应的显示位置,将原来的@Html.DisplayFor(model => model.文档内容)改为@Html.Raw(Model.文档内容),也就是对数据提取出来的Content 字段的html标签不进行编码。

这样就能正常使用了。

二、ueditor的迷你版umeditor。

迷你版umeditor最新的.net版 为1.2.2  编译时间为2016-12-22   官网不知道为什么不能直接下。我是从官网“UM演示”里面的Github下载地址下载的。因为是迷你版,很多步骤还是一样的。

1、同ueditor的1。

2、同ueditor的2。

3、下载后解压,将文件夹更名为umeditor,文件夹里面就是源程序。文件名必须是这个,否则后面会麻烦。

4、官网不知道为什么不能直接下。我是从官网“UM演示”里面的Github下载地址下载的。(好像官网也知道这个版本不正常,所以没提供下载。别的版本都是1.2.3了)

5、将此umeditor文件夹复制到自己MVC项目的根目录中。

6、同ueditor的6、7。

7、在视图的<h2>前面添加

<link href="~/umeditor/themes/default/css/umeditor.css" type="text/css" rel="stylesheet">

8、然后找到底部的脚本代码@Scripts.Render("~/bundles/jqueryval")

替换为@Scripts.Render("~/bundles/jqueryval", "~/umeditor/third-party/jquery.min.js", "~/umeditor/umeditor.config.js", "~/umeditor/umeditor.min.js") 这里新加了三个

9、紧接着上面的代码,在下面写如下代码:

<script type="text/javascript">
var ueditor = UM.getEditor('neirong');   //这里是um不是之前的UE了。
</script>

10、现在运行就应该能看到富文本编辑效果了。

11、经测试这个版本的图片不能正常上传。所以我注释掉了相关的功能,相当于只用了基本的文字编辑功能。

12、同ueditor的13。

13、同ueditor的14。

ASP.NET MVC5 中百度ueditor富文本编辑器的使用的更多相关文章

  1. ASP.NET MVC 中使用 UEditor 富文本编辑器

    在上篇<使用ASP.NET MVC+Entity Framework快速搭建博客系统>中,已经基本上可以实现博客分类和博客文章的CURD.但是,文章编辑界面实在是…… 好吧,咱得搞专业点. ...

  2. 百度ueditor富文本编辑器的使用

    百度ueditor富文本编辑器的使用 //以下为我在官网下载的ueditor v1.3.5 php版的大楷配置步骤第一步: //配置文件的引入应该比功能文件先引入,最后设置语言类型.即:editor. ...

  3. PHP如何搭建百度Ueditor富文本编辑器

    本文为大家分享了PHP搭建百度Ueditor富文本编辑器的方法,供大家参考,具体内容如下 下载UEditor 官网:下载地址 将下载好的文件解压到thinkphp项目中,本文是解压到PUBLIC目录下 ...

  4. django之百度Ueditor富文本编辑器后台集成

    Python3 + Django2.0 百度Ueditor 富文本编辑器的集成 百度富文本编辑器官网地址:http://fex.baidu.com/ueditor/ 疑问:为什么要二次集成? 答案:因 ...

  5. WEB项目中使用UEditor(富文本编辑器)

    Ueditor富文本编辑器是在很多项目里经常用到的框架,是百度开发团队开发的一款很好用的富文本编辑器 下面就是我在一个系统里用到的,有了富文本编辑器,管理员使用起来不是很方便? 所以本博客介绍这个富文 ...

  6. 在网站中使用UEditor富文本编辑器

    UEditor是由百度WEB前端研发部开发的所见即所得的开源富文本编辑器,具有轻量.可定制.用户体验优秀等特点. 官网链接 进入到下载页面,选择相应的版本下载 这里我们使用ASP.NET开发,所以选择 ...

  7. vue集成百度UEditor富文本编辑器

    在前端开发的项目中.难免会遇到需要在页面上集成一个富文本编辑器.那么.如果你有这个需求.希望可以帮助到你 vue是前端开发者所追捧的框架,简单易上手,但是基于vue的富文本编辑器大多数太过于精简.于是 ...

  8. Vue 中使用UEditor富文本编辑器-亲测可用-vue-ueditor-wrap

    其中UEditor中也存在不少错误,再引用过程中. 但是UEditor相对还是比较好用的一个富文本编辑器. vue-ueditor-wrap说明 Vue + UEditor + v-model 双向绑 ...

  9. vue2.0项目中使用Ueditor富文本编辑器示例

    最近在vue项目中需要使用富文本编辑器,于是将Ueditor集成进来,作为公共组件. 在线预览:https://suweiteng.github.io/vue2-management-platform ...

随机推荐

  1. MicroPython开发之物联网快速开发板

    Python的火热让其运行在MCU端的MicroPython也逐渐迎来了春天.MicroPython的出现让Python这种"胶水语言"成功引用到嵌入式领域,也使得Python控制 ...

  2. js 闭包的用法详解

    一.闭包 实现可重用的局部变量,且保护其不受污染的机制. 外层函数包裹受保护的变量和内层函数. 内层函数专门负责操作外层函数的局部变量. 将内层函数返回到外层函数外部,反复调用. 二.作用域 子函数会 ...

  3. 小白的Python之路 day5 shutil模块

    shutil模块 一.主要用途 高级的文件.文件夹.压缩包 等处理模块 二.常用方法详解 1.shutil.copyfileobj(fsrc, fdst) 功能:把一个文件的内容拷贝到另外一个文件中, ...

  4. 终端登入mysql

    mysql -u 用户名 -p 输入密码     1. 给root用户添加密码,密码为root     mysqladmin -u root -p password root 2. 通过终端连接ser ...

  5. Python 接口自动化(预)

    1. HTTP协议:HTTP是接口测试的基础: 2. Fiddler工具:Fiddler所有界面布局及主要布局

  6. 分享用于学习C++音频处理的代码示例

    与<分享用于学习C++图像处理的代码示例>为姊妹篇. 为了便于学习C++音频处理并研究音频算法, 俺写了一个适合初学者学习的小小框架. 麻雀虽小五脏俱全,仅仅考虑单通道处理. 采用Deco ...

  7. [转载]binlog归档

    1.1. 前言 对数据库数据进行备份都是日常的工作(虽然都是自动做的),备份中有一项必备的那就是binglog了.在工作中一般这些备份都会保留一段时间后归档.时间长了归档的数据将会非常大.这时候我们就 ...

  8. Virtual Box配置CentOS7网络

    1.先管理中配置两个网络 最好的办法就是使用两块网卡,nat(虚拟机访问互联网,使用10.0.2.x段)和host-only(虚拟机和主机互相通信,使用192.168.56.x段) 2.接下来对Cen ...

  9. 【整理】REACT一些自己感觉需要记的东西

    REACT生命周期: 组件的生命周期可分成三个状态: Mounting:已插入真实 DOM Updating:正在被重新渲染 Unmounting:已移出真实 DOM 生命周期的方法有: compon ...

  10. Flask框架

    FLask框架的简单介绍 Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请 ...