ckeditor插入或更新在第一次尝试时不起作用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ckeditor插入或更新在第一次尝试时不起作用相关的知识,希望对你有一定的参考价值。

我在使用CKEditor并将其信息发送到数据库时遇到了一些麻烦。它工作得非常好,我有所有功能但是当我通过ajax请求将它发送给php时,它不会将文本假设为第一次进入CKEditor。它只在我第二次发出ajax请求后才有效。似乎CKEditor不是实时的,只有在X时间之后它才能保存我输入的信息,但我找不到任何与之相关的信息。

我的初学者:

        if (jQuery('#js-ckeditor:not(.js-ckeditor-enabled)').length) {
        CKEDITOR.replace('js-ckeditor');

        // Add .js-ckeditor-enabled class to tag it as activated
        jQuery('#js-ckeditor').addClass('js-ckeditor-enabled');
    }

我的函数发出请求:

        $.ajax({ url: '../inc/call.php',
        enctype: 'multipart/form-data',
        processData: false,
        contentType: false,
        cache: false,
        data: formData,
        type: 'POST',
        beforeSend: function(){
            $("#article_btn").html('<i class="fa fa-cog fa-spin"></i>');
            $("#article_btn").attr("disabled", true);
        },
        success: function(output) {...}});

还有一个问题,将这些信息保存到数据库的最佳方法是什么?目前我正在使用htmlspecialchars和htmlspecialchars_decode,但是当使用一些函数(表格,颜色)时,它确实不能很好地工作,并且不能以正确的方式在数据库中保存所有内容。

答案

我会回答你的第一个问题:

如果您使用的是AJAX,请在通过调用textarea将数据发送到服务器之前手动更新https://ckeditor.com/docs/ckeditor4/latest/api/CKEDITOR_editor.html#method-updateElement。这个话题实际上是已知的。请参阅例如https://dev.ckeditor.com/ticket/9913#comment:2

以上是关于ckeditor插入或更新在第一次尝试时不起作用的主要内容,如果未能解决你的问题,请参考以下文章

QT ODBC 驱动程序 .mdb ms-access 插入在 1000 行以上时不起作用(Windows)

window.onload 和 window.beforeunload 在尝试更新和显示变量时不起作用

React setState 在第一次尝试时不起作用,但在第二次尝试时起作用?

插入 UITableViewCell 不起作用

核心数据:后台更新 NSManagedObjectContext 在保存时不起作用

传播运算符在 console.log 中工作,但在尝试返回或设置变量时不起作用 [重复]