【踩坑】Layui富文本编辑器无法同步接收信息与没有定义

最近在用layui写springboot-web项目的前端,在使用富文本编辑器的时候,发现前端不能直接接收富文本编辑器输入框内的内容,这是因为,富文本输入框是被重新渲染(render)的,想要获得富文本输入框内的信息,只能使用layui富文本自带的同步功能:

<textarea class="layui-textarea" name="content" id="content" placeholder="请输入公告内容" ></textarea>


<script type="text/javascript">

layui.use('layedit', function(){
  var layedit = layui.layedit;


//初始化富文本编译器
var editIndex = layedit.build('content');

$("#doSubmit").click(function () {
            //alert(url);  
            //url是接口
            layedit.sync(editIndex); //同步富文本和textarea里面的内容
            var data = $("#dataFrm").serialize();
            $.post(url,data,function (res) {
                if (res.code==200){
                    tableIns.reload();
                }
                //提示操作是否成功
                layer.msg(res.msg);
            });
        });

});

</sript>

其中,layedit.sync(editIndex);就是用于将富文本框内的内容同步到textarea里面去。

理想很丰满,现实很骨感,实际操作上,会出现error,比如现实layedit没有定义。

即报错:layedit is not defined

但是这并不是我们操作失误,我们明明就定义好了。

在查了许多资料后,我悟道了一个道理:既然大山不会走向默罕默德,那么默罕默德就走向大山。

既然我们操作没有问题,那就去改一改源码。

富文本编辑器的源码在 \layui\lay\modules\layedit.js

在源码中搜索layedit.sync,将其改为this.sync

原来:

改后:

改后就可以使用同步,也不会报错了。

神奇!就像雷诺一样神奇!

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值