layui弹出层里使用TinyMCE富文本编辑器,并且回显数据案例

使用前先看下TinyMCE中文文档:http://tinymce.ax-z.cn/quick-start.php

先看下我要实现的功能

layui弹出层里使用TinyMCE富文本编辑器,并且回显数据案例_第1张图片

点击添加,弹出一个富文本编辑器,这个弹框有layer和TinyMCE组成

layui弹出层里使用TinyMCE富文本编辑器,并且回显数据案例_第2张图片

更新:回显内容

layui弹出层里使用TinyMCE富文本编辑器,并且回显数据案例_第3张图片

弹出层的页面的单独来一个,因为用的是iFrame

1.添加或者更新的页面




    
    Title
    
    
    
    


2.点击添加或更新按钮所在的页面(父页面)调用TinyMC的页面,摘取部分主要代码

        function add() {
            layer.open({
                title: "添加公告",
                //一定是要ifream类型,不然富文本编辑器编辑不了内容
                type: 2,
                maxmin: true,
                area: ['800px', '400px'],
                content: '/sys/toAddOrUpdate',
                btnAlign: 'c'
            });
        }

        function update(data) {

            layer.open({
                type: 2,
                maxmin: true,
                area: ['800px', '400px'],
                //打开的页面,通过url参数方式,把需要回显的数据带过去,记得编码,不然乱码
                content: '/sys/toAddOrUpdate?'+parseParams(data),

                //这个方法当你在层创建完毕时即执行一些语句
                // success: function (layero, index) {
                //     var body = layer.getChildFrame('body', index);
                //本来这样赋值可以让弹出层的表单成功赋值,就是回显,
                //但是我在弹出层页面取不到赋的值,所以就暂时不用,群友可以用,有空再试一试,
                //     body.find('[name="id"]').val(data.id);
                //     body.find('[name="title"]').val(data.title);
                //     body.find('[name="content"]').text(data.content);
                // }
            });
        }

        function parseParams(data) {
            try {
                var tempArr = [];
                for (var i in data) {
                    var key = encodeURI(i);
                    var value = encodeURI(data[i]);
                    tempArr.push(key + '=' + value);
                }
                var urlParamsStr = tempArr.join('&');
                return urlParamsStr;
            } catch (err) {
                return '';
            }
        }
    });

 

你可能感兴趣的:(前端)