2012-03-06 64 views
3

我正在使用tinyMCE for Wordpress。
哪种方式通过AJAX从服务器加载文本?
到现在为止,我有:通过AJAX将文本加载到tinyMCE for Wordpress中

PHP:

<?php echo the_editor($_POST ? $_POST['content'] : '', $id = 'content'); ?> 

的JavaScript(这是失败的...):

$("select[name='tpl']").live("change", function(e) { 
    var file = $(this).val(); 
    var loadUrl = varsJs.WORDPRESS_PLUGIN_URL + "/templates/" + file; 
    $.get(loadUrl, function(result) { 
     $("#content").val(result); 
    }); 
}); 

变量result加载所需的文本。没有问题。但是如何将这些内容传递给tinyMCE?

回答

2
if (typeof tinymce === "object"){ 
    $("select[name='tpl']").live("change", function(e) { 
     var file = $(this).val(); 
     var loadUrl = varsJs.WORDPRESS_PLUGIN_URL + "/templates/" + file; 
     $.get(loadUrl, function(result) { 
      tinymce.get("content").focus(); 
      tinymce.activeEditor.setContent(result); 
     }); 
    }); 
} 

注:varsJs是用于将数据传递从phpjavascriptwp_localize_script函数的第二个参数。在这个确切的问题中确实不需要,但知道它是有用的。

0

试试这个代码,其中 '内容' 是您的字段#ID

tinymce.init(tinyMCEPreInit.mceInit [ '内容']);

这种方式,一旦TinyMCE的也装载在当前的HTML, 你会重新初始化只有一个字段,你从Ajax请求收到的一个。

还建立节约呼叫

tinymce.activeEditor.save()AJAX在这之前的代码; //获取编辑器实例

相关问题