我正在创建一个应用程序,我使用TinyMCE编辑器在文本区域中提供文本编辑选项。我想提供save
功能,我希望使用AJAX帖子保存textarea内容。
所以在按钮上单击我使用form.serialize()在AJAX请求中发送它。下面是我正在使用的jquery。根据这个,它应该序列化除了一个名称csrfmiddlewaretoken
之外设置的所有字段。 textarea的id是id_text
,由django模型给出。但问题是我在编辑器中输入的任何文本实际上都没有复制到我的textarea上。
很可能TinyMCE编辑器在屏幕上显示它,只有当我们按下提交按钮时,它才会复制到底层文本区域。因此,我无法保存正在输入的内容。
$(".preview_button").click(function()
{
$.ajax({
type: "POST",
url: current_link,
data: $("#blog_form :input[name!='csrfmiddlewaretoken']").serialize(),
dataType: 'json',
success: function(data)
{
var preview_link = location.host;
preview_link = preview_link + data;
window.open(data,'preview_tab');
$("#reply-message").html('Form saved' + $("#blog_form :input[name!='csrfmiddlewaretoken']").serialize());
},
error: function(request,error)
{
// display success message and reset values in the form fields
$("#reply-message").html('Form not saved because error:' + error);
},
});
return false;
});
有人可以告诉我如何访问TinyMCE文本编辑器中的文本,如屏幕上所示。
答案 0 :(得分:2)
使用编辑器实例上的save method将内容从编辑器移动到文本区域。
答案 1 :(得分:2)
您可以使用getContent
功能:http://www.tinymce.com/wiki.php/API3:method.tinymce.Editor.getContent
答案 2 :(得分:0)
添加这个tinyMCE.triggerSave();就像那样:
tinyMCE.triggerSave(); $.ajax({ // Your code });
它将解决您的问题。