为什么这个TinyMCE AJAX集成可以工作9/10次?

时间:2015-08-25 21:40:06

标签: javascript jquery ajax tinymce

我有一个TinyMCE实现在大约80-90%的时间内工作,但是对于最后一个百分点,编辑器的内容无法填充 - 因为没有更好的措辞。

实际上,在页面加载时,jQuery AJAX调用会到达一个PHP页面,该页面从我的数据库中获取一些内容。检索后,我将TinyMCE实例的值设置为响应的内容。我已经完成了几轮,首先使用自定义AJAX构建,最近使用jQuery构建。在这两种情况下,我都会得到相同的结果 - 编辑器加载,内容从服务器返回,并且每隔一段时间,文本区域就会变成空白。

最新的尝试比之前的尝试短得多,但不管怎样,我仍然得到了相同的结果。在内容加载无效后,我也尝试重新绘制TinyMCE实例。

两个控制台日志的结果是相同的 - 以及来自我的服务器的预期响应 - 即使在出现故障的情况下也是如此。因此值设置为IS,但内容不可见。

function LoadAgenda()
{
    $.ajax(
    {       
        url: 'http://www.example.com/agenda.php?AgencyID=' + AgencyID + '&date=' + AgendaDate,
        cache: false,
        dataType: 'html'
    })
    .done(function(Response)
    {
        console.log(Response);

        $('#AgendaContent').val(Response);

        tinyMCE.execCommand("mceRepaint");

        console.log($('#AgendaContent').val());
    });
}

最后,为了记录,我使用的是TinyMCE 4.1.6。

如果有人需要更多信息,我很乐意帮忙。

1 个答案:

答案 0 :(得分:0)

先发生什么?编辑器加载或ajax调用完成?如果在编辑器加载后你的ajax调用正在进行,我不会认为.val()会起作用,因为它在TinyMCE初始化之后不再是一个简单的textarea。试试这个: