使用jquery填充ckeditor表单

时间:2017-01-16 09:53:02

标签: jquery forms ckeditor populate

我试图在Jquery中使用Json解析从mysql数据填充表单,除了“ CKEDITOR Field / textarea ”总是空白之外一切正常,这是我的代码

function populateForm(form, dataJSON)
{
    var data = $.parseJSON(dataJSON);
    $.each(data, function(key, value) {
        var $ctrl = $("#"+form).find('[id='+key+']');
        if ($ctrl.is('select')){
            $('option', $ctrl).each(function() {
                if (this.value == value)
                    this.selected = true;
            });
        }
        else if ($ctrl.is('textarea')) {
            $ctrl.val(value);
        }
        else {
            switch($ctrl.attr("type")) {
                case "email":
                case "text":
                case "hidden":
                    $ctrl.val(value);
                    break;
                case "checkbox":
                    if (value == 'on')
                        $ctrl.prop('checked', true);
                    else
                        $ctrl.prop('checked', false);
                    break;
            }
        }
    });
}

如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

CKEditor创建一个显示文本的小部件,该小部件与原始textarea分开。如果CKEditor已经初始化,而不是自己更新textarea,则需要以编程方式将文本添加到窗口小部件,如下所示...

CKEDITOR.instances.IDofEditor.insertText(value);