zoukankan      html  css  js  c++  java
  • summernote富文本编辑器的使用

    最近做的一个项目要做一个富文本编辑器,于是用来summernote。它的用法和注意点如下:

    前端代码HTML:

       <div class="form-group">
                    <label class="col-sm-2 control-label">反馈内容:</label>
                    <div class="col-sm-10">
                        <input id="feedbackContent" name="feedbackContent" type="hidden">
                        <div class="summernote"></div>
                    </div>
       </div>

    js代码:

    <script type="text/javascript">
    var prefix = ctx + "system/info"

    //用类选择器给class = summernote的div添加一个summernote富文本编辑器 $('.summernote').summernote({ placeholder: '请输入反馈内容', height : 192, lang : 'zh-CN', followingToolbar: false,
    //回调函数onImageUpload callbacks: { onImageUpload:
    function (files) {
    //调用文件上传函数 sendFile(files[
    0], this); } } }); // 上传文件 function sendFile(file, obj) {

    /*ormData是ajax2.0(XMLHttpRequest Level2)新提出的接口,利用FormData对象可以将form表单元素的name与value进行组合,
    实现表单数据的序列化,从而介绍表单元素的拼接,提高工作效率*/
               //新建一个FormData对象,FormData是将数据以键值对形式
    var data = new FormData();
    //给data对象里面添加键值对
    data.append("file", file);
                $.ajax({
                    type: "POST",
                    url: ctx + "file/upload",
                    data: data,   
    //
    cache: true和false的区别是:true的话会读缓存而且真的到服务器上;alse的话会在url后面加一个时间缀,而是让它跑到服务器获取结果。

    cache: false,

    //contentType代表发送信息至服务器时内容编码类型,通俗点说就是告诉服务器从浏览器提交过来的数据格式。
                    contentType: false,
    //
    processData默认为true(该方法为jQuery独有的)默认情况下会将发送的数据序列化以适应默认的内容类型
    //application/x-www-form-urlencoded如果想发送不想转换的的信息的时候需要手动将其设置为false

    processData: false,
                    dataType: 'json',
    //在ajax向后端controller发送数据,并且controller正确执行,正确返回之后执行success success:
    function(result) { if (result.code == web_status.SUCCESS) {
    // $(obj).summernote(
    'editor.insertImage', result.data.url, result.data.fileName); } else { $.modal.alertError(result.msg); } }, error: function(error) { $.modal.alertWarning("图片上传失败。"); } }); } /*校验*/ $("#form-info-add").validate({ focusCleanup: true }); /*提交*/ function submitHandler() { if ($.validate.form()) { var sHTML = $('.summernote').summernote('code'); $("#feedbackContent").val(sHTML); $.operate.save(prefix + "/add", $('#form-info-add').serialize()); } } </script>

    注意点:当summernote中添加表格时,数据库不能保存标签,只有纯文本,这时需要在application.yml中添加一个配置:

    # 排除链接(多个用逗号分隔)
    excludes: /system/notice/*,/system/info*
  • 相关阅读:
    IOS图像处理(6)在内存上下文中绘图
    IOS图像处理(5)填充模式
    IOS图像处理(4)坐标变化
    IOS图像处理(3)绘制路径
    IOS图像处理(2)绘制文本
    IOS图像处理(1)绘制简单的几何图形
    containsString
    UIScrollView zoom in/out center
    Mac Sublime Text 2 快捷键(转)
    Characteristics with cached values must be read-only
  • 原文地址:https://www.cnblogs.com/liqinzhen/p/13160047.html
Copyright © 2011-2022 走看看