CkEditor与jQuery表单冲突

时间:2019-03-13 17:35:45

标签: javascript jquery ckeditor

我正在使用CKEditor并尝试使用jquery提交表单,但存在冲突 jQuery

        $(document).ready(function (e) {
        $("#form").on('submit',(function(e) {
            e.preventDefault();
            console.log(new FormData(this))
            $('.loading-container').show();
                $.ajax({
                url: "store-course-teacher",
                type: "POST",
                data:  new FormData(this),
                contentType: false,
                cache: false,
                processData:false,

                success: function(data)
                {
                    $('.loading-container').hide()
                    if(data.status == 'done')
                    {
                        $('#form').hide();
                        $('#add-section').show();
                        $('#course-title').html($('#title').val());
                        $('.course-id').val(data.course_id)

                    }
                }
            });
        }));
    });

,并从我的控制器中转储了结果,并且带有ckeditor的所有文本区域均为NULL 我想尽可能地清楚一点,但这就是我所拥有的

2 个答案:

答案 0 :(得分:1)

我相信使用ckeditor,您必须像这样从文本编辑器获取HTML:

var data = CKEDITOR.instances.editor1.getData();

因此,在调用ajax之前,也许可以将数据设置为表单中的隐藏输入,以使新的FormData(this)保持不变?

var data = CKEDITOR.instances.editor1.getData();
$('#MyHiddenInput').val(data);

More info here

答案 1 :(得分:0)

使用来发送ckEditor的最佳方法是更新ckEditor实例

for (instance in CKEDITOR.instances) {
    CKEDITOR.instances[instance].updateElement();
 }

我找到了解决方法here