我在使用ajax提交表单的表单中使用TinyMCE。在过去的4个小时里,我一直在努力弄清楚出了什么问题,但我已经走到了尽头。
我使用以下代码初始化TinyMCE:
tinymce.init({
selector: "textarea.editme",
plugins: ["advlist autolink autosave link image lists charmap print preview hr anchor
pagebreak spellchecker","searchreplace wordcount visualblocks visualchars code
fullscreen insertdatetime media nonbreaking","table contextmenu directionality
emoticons template textcolor paste fullpage textcolor imageplugin"],
toolbar1: "image_list undo redo | bold italic underline strikethrough | alignleft
aligncenter alignright alignjustify | fontselect fontsizeselect forecolor backcolor",
toolbar2: "cut copy paste | searchreplace | bullist numlist | outdent indent
blockquote | preview | table",
menubar: false,});
我没有加载它的问题所以代码应该没问题,但为了以防万一我将其复制到这里。
我有一个正确的课程" editme"显示TinyMCE。此文本区域嵌入在表单()
中我使用以下代码提交表单:
$("#submitform").submit(function(e)
{
tinyMCE.triggerSave(true,true);
var postData=$(this).serializeArray();
var url = 'php/forms_post.php';
$.ajax(
{
url : url,
type: "POST",
data : postData,
success:function(data, textStatus, jqXHR)
{
// DISPLAY SUCCESS
},
error: function(jqXHR, textStatus, errorThrown)
{
// DISPLAY FAILURE
}
});
e.preventDefault();
e.unbind();
});
代码工作正常,除了一件事。如果我写" aaaaaa"在textarea第一次,它被正确提交,一切都很好。但是,如果我将其更改为" bbbbbb",则提交的数据仍然是" aaaaaa"。看起来triggerave会将数据保存在内存中并拒绝任何更改。我已经重新启动了浏览器,服务器,清理缓存,清理了cookie,......但问题仍然存在。
如果我删除TinyMCE并保留标准文本区域,我没有问题。
你知道出了什么问题吗?
非常感谢 劳伦