layui 整合UEditor 百度编辑器

layui 整合UEditor 百度编辑器

第一步:下载百度编辑器并配置好路径

百度编辑器下载地址:http://fex.baidu.com/ueditor/

第二步:引入百度编辑器

代码如下:

html 复制代码
      <div class="layui-form-item layui-form-text">
               <label class="layui-form-label">内容</label>
               <div class="layui-input-block" style="z-index: 100;">
                <textarea placeholder="请输入内容" class="layui-textarea" id="container"  name="content"  style="height:500px; width:700px; border:none"></textarea>
               </div>
       </div>
 <!-- 配置文件 -->
      <script type="text/javascript" charset="utf-8" src="/static/ueditor/ueditor.config.js"></script>
      <!-- 编辑器源码文件 -->
      <script type="text/javascript" charset="utf-8" src="/static/ueditor/ueditor.all.js"></script>
      <script type="text/javascript" charset="utf-8" src="/static/ueditor/lang/zh-cn/zh-cn.js"></script>
       <script>
              //id=container是编辑器的选择器
              var ue = UE.getEditor('container', {
                  // ... 更多配置
                  initialFrameHeight:400,
                   autoHeight: false,
                   autoHeightEnabled:false,
                   autoFloatEnabled:false
                   });
        </script>

第三步:提交表单部分

javascript 复制代码
layui.use(['form','layer', 'element','upload'],function () {
        var $ = layui.$
            ,form = layui.form
            ,element = layui.element
            ,upload = layui.upload
            ,layer = layui.layer;
        form.render();
        //提交
        form.on('submit(add)', function(data){
            //更换编辑器内容
            data.field.content = ue.getContent();
            $.ajax({
                type:"post",
                url:"{:url('addpost')}",
                data:data.field,
                dataType:"json",
                // beforeSend:function () {
                //   loadIndex = layer.load();
                // },
                success:function (data) {
                    if (data.code == 0) {
                        // layer.close(loadIndex);
                        layer.alert(data.msg, {
                            icon: 2
                        }, function (index) {
                            layer.close(index);
                            $("input[name="+data.data+"]").val('').focus();
                        });
                    } else if (data.code == 1) {
                        //layer.close(loadIndex);
                        layer.alert(data.msg, {
                            icon: 1
                        }, function (index) {
                            layer.close(index);
                            var index2 = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
                            parent.layer.close(index2); //再执行关闭
                            window.parent.location.href=data.url
                        });
                    }
                },
                error:function (xhr) {

                }


            })

        });
  });       

注意: 提交表单前一定要替换content的内容为编辑器内容,data.field.content = ue.getContent();
否则,提交的表单 content 内容将会为空,导致后端接收不到数据!!!

相关推荐
编程社区管理员2 小时前
React 发送短信验证码和验证码校验功能组件
前端·javascript·react.js
全马必破三2 小时前
React“组件即函数”
前端·javascript·react.js
三思而后行,慎承诺2 小时前
React 底层原理
前端·react.js·前端框架
座山雕~2 小时前
html 和css基础常用的标签和样式
前端·css·html
灰小猿3 小时前
Spring前后端分离项目时间格式转换问题全局配置解决
java·前端·后端·spring·spring cloud
im_AMBER3 小时前
React 16
前端·笔记·学习·react.js·前端框架
02苏_3 小时前
ES6模板字符串
前端·ecmascript·es6
excel3 小时前
⚙️ 一次性警告机制的实现:warnOnce 源码深度解析
前端
excel3 小时前
Vue SFC 样式编译核心机制详解:compileStyle 与 PostCSS 管线设计
前端
excel3 小时前
🧩 使用 Babel + MagicString 实现动态重写 export default 的通用方案
前端