描述:最近c#项目中使用富文本编辑器Simditor,记录一下以便以后查看。

注:此项目是MVC架构的。

1.引用文件

项目中引用相应的css和js文件,注意顺序不能打乱,否则富文本编辑器不会正常显示。

    <link rel="stylesheet" type="text/css" href="../styles/simditor.css" />
<script type="text/javascript" src="../scripts/jquery.min.js"></script>
<script type="text/javascript" src="../scripts/simditor/module.js"></script>
<script type="text/javascript" src="../scripts/simditor/hotkeys.js"></script>
<script type="text/javascript" src="../scripts/simditor/uploader.js"></script>
<script type="text/javascript" src="../scripts/simditor/simditor.js"></script>

2.HTML中富文本的定义

<div >
<h5>故障描述:</h5>
<div class="view">
<textarea id="Describe"></textarea>
</div>
</div>

3.初始化富文本

注意的参数:

textarea: $('#Describe'), //对应的html中富文本的ID。
url: '../../WebManage/WebNews/UploadPic', //对应的服务器的地址。(对应Controller中的Action)
params: null, //以键值对的方式,传递给后台的参数,若无填写null即可
fileKey: 'fileDataFileName',  //服务器获取文件数据的参数名
<script type="text/javascript">
var editor1;
  $(document).ready(function () {
  editor1 = new Simditor({
  textarea: $('#Describe'),
  placeholder: '这里输入图文内容...',
  pasteImage: true,
  toolbar: ['title', 'fontScale', 'alignment', 'bold', 'italic', 'underline', 'strikethrough', 'color', '|',
           'ol', 'ul', 'blockquote', 'code', 'table', '|', 'link', 'image', 'hr', '|', 'indent', 'outdent'],
upload: {
  url: '../../WebManage/WebNews/UploadPic', //文件上传的接口地址
params: null, //键值对,指定文件上传接口的额外参数,上传的时候随文件一起提交
  fileKey: 'fileDataFileName', //服务器端获取文件数据的参数名
  connectionCount: 3,
  leaveConfirm: '正在上传文件'
  }
  });
});
</script>

4.页面效果

页面中有“上传图片”和“外链图片”两个按钮供选择。

5.C#后台保存图片代码

后台图片的保存代码,["fileDataFileName"]就是上面"3"中的fileKey

        /// <summary>
/// 编辑器提交图片
/// </summary>
/// <returns></returns>
public ActionResult UploadPic()
{
HttpPostedFileBase file = Request.Files["fileDataFileName"];
if (file != null)
{
//生成路径
string path = OperatorProvider.Provider.Current().Account + "_" + Util.Time.Now.Year
+ Util.Time.Now.Month.ToString("D2")
+ Util.Time.Now.Day.ToString("D2");
string strPath = HttpContext.Server.MapPath(string.Format("/Resource/Upload/{0}/", path));
if (!Directory.Exists(strPath))
{
Directory.CreateDirectory(strPath);
}
string filePath = Path.Combine(strPath, Path.GetFileName(file.FileName));

          //保存图片
file.SaveAs(filePath);
return Success("上传成功!");
}
else
{
return Success("上传失败!");
}
}

6.Html前端页面的"保存"代码

前端页面获取数据用getValue即可。

        var postData = {
//...
describe: editor1.getValue()
}
$.SaveForm({
url: "../../WebManage/WebNews/SaveForm?keyValue=" + keyValue,
param: postData,
loading: "正在保存数据...",
success: function () {
$.currentIframe().$("#gridTable").trigger("reloadGrid");
}
});

7.c#后端"保存"按钮

[ValidateInput(false)]必须加上,否则会提示:从客户端(*****)中检测到有潜在危险的......

        /// <summary>
/// 保存新闻表单(新增、修改)
/// </summary>
/// <param name="keyValue">主键值</param>
/// <param name="newsEntity">新闻实体</param>
/// <returns></returns>
[HttpPost]
[AjaxOnly]
[ValidateInput(false)]
public ActionResult SaveForm(string keyValue, WebNewsEntity newsEntity)
{
newsBLL.SaveForm(keyValue, newsEntity);
return Success("操作成功。");
}

8.页面展示富文本保存的数据

前端页面展示用setValue 即可正常展示。

  editor1.setValue(data.describe);

以上是使用富文本编辑器Simditor在C#中带图片上传的全部过程(是MVC架构的项目)。

仅供参考,如有问题,望指出。

C#中富文本编辑器Simditor带图片上传的全部过程(MVC架构的项目)的更多相关文章

  1. c#中富文本编辑器Simditor带图片上传的全部过程(项目不是mvc架构)

    描述:最近c#项目中使用富文本编辑器Simditor,记录一下以便以后查看. 注:此项目不是MVC架构的. 1.引用文件 项目中引用相应的css和js文件,注意顺序不能打乱,否则富文本编辑器不会正常显 ...

  2. Simditor 富文本编辑器多选图片上传、视频连接插入

    simditor 是一个基于浏览器的所见即所得的文本编辑器.Simditor 富文本编辑器, 支持多选图片上传, 视频连接插入, HTML代码编辑以及常用富文本按钮,支持的浏览器:IE10.Firef ...

  3. wangEditor富文本编辑器使用及图片上传

    引入js文件 <script type="text/javascript" src="style/js/wangEditor.min.js">< ...

  4. 富文本编辑器TInyMCE,本地图片上传(Image Upload)

    TinyMCE 官网 (类似:百度的富文本web编辑器UEditor) 第一步 下载 TinyMCE,解压后放入工程,在需要的HTML页面引入tinymce.min.js. 第二步 下载tinyMCE ...

  5. 富文本之BootStrap-wysiwyg 带图片上传功能

    BootStrap-wysiwyg插件具有良好的编辑功能和展示效果. 一.使用方法在网上有很多,在此记录自己使用过程中的一些问题和解决方式. 相关依赖: bootstrap-wysiwyg.js (核 ...

  6. wangEditor - 轻量级web富文本编辑器(可带图片上传)

    业务需求: 通过后台编辑文章和图片,上传到前端界面,展示新闻消息模块.这个时候,需要一款简洁的编辑器,百度编辑器是最常用的一种,但是功能太过于复杂,而wangEditor - 轻量级web富文本编辑器 ...

  7. summernote(富文本编辑器)将附件与图片上传到自己的服务器(vue项目)

    1.上传图片至自己的服务器(这个官方都有例子,重点介绍附件上传)图片上传官方网址 // onChange callback $('#summernote').summernote({ callback ...

  8. DWZ集成的xhEditor编辑器浏览本地图片上传的设置

    有关xhEditor的文件上传配置官方文档链接:http://i.hdu.edu.cn/dcp/dcp/comm/xheditor/demos/demo08.html 一.xhEditor图片上传的配 ...

  9. asp.net 百度编辑器 UEditor 上传图片 图片上传配置 编辑器配置 网络连接错误,请检查配置后重试

    1.配置ueditor/editor_config.js文件,将 //图片上传配置区 ,imageUrl:URL+"net/imageUp.ashx" //图片上传提交地址 ,im ...

随机推荐

  1. ref、out与params

    ref 把值传递转换为引用传递,侧重于将一个值带到函数中进行改变,再将改变后的值带出去,ref参数在函数外必须为ref参数赋值 ; AddSalary(ref salary); //如果不写ref,s ...

  2. easyui 功能介绍

    最近使用easyui, 下面,我介绍下常用功能: //绑定Product总类型 $('#gdv_ProductParentType').datagrid({ url: '../api/BindData ...

  3. LightOJ 1030 【概率DP求期望】

    借鉴自:https://www.cnblogs.com/keyboarder-zsq/p/6216762.html 题意:n个格子,每个格子有一个值.从1开始,每次扔6个面的骰子,扔出几点就往前几步, ...

  4. MT【7】伯努利不等式

    评:伯努利不等式: 若$r\le0$或者$r\ge1$,$(1+x)^r\ge1+rx$, 若$0\le r\le1$,$(1+x)^r\le1+rx$

  5. BZOJ 3612: [Heoi2014]平衡

    3612: [Heoi2014]平衡 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 283  Solved: 219[Submit][Status][ ...

  6. cf827D Best Edge Weight (kruskal+倍增lca+并查集)

    先用kruskal处理出一个最小生成树 对于非树边,倍增找出两端点间的最大边权-1就是答案 对于树边,如果它能被替代,就要有一条非树边,两端点在树上的路径覆盖了这条树边,而且边权不大于这条树边 这里可 ...

  7. UVALive - 6436(DFS)

    题目链接:https://vjudge.net/contest/241341#problem/C 题目大意:给你从1到n总共n个数字,同时给你n-1个连接,同时保证任意两个点之间都可以连接.现在假设任 ...

  8. redis访问安全加固

    目录 redis漏洞 入侵特征 安全隐患 redis安全规范 禁止root用户启动 限制redis文件目录访问权限 开启密码认证,设置复杂密码 禁用或重命名危险命令 设置允许监听地址,不要使用0.0. ...

  9. Zookeeper3.4.10 + ActiveMQ-5.15.0 集群搭建

    网上的教程真的是凤毛麟角,就不想说啥了,一次一次把我带入坑. 好了关于Zookeeper的搭建已经说好了,本文说说基于Zookeeper的MQ集群. 第一步.将mq安装包上传到CentOS7,并解压 ...

  10. idea去掉无效引用

    Mac版的idea,打开Preference->Editor->General,打勾红色框框. 然后使用快捷键 contrl + option + o 只能去掉当前文件没有引用的包,并不能 ...