У нас есть форма, которая имеет довольно много текстовых областей (в некоторых случаях целых 20).Каждая из этих текстовых областей преобразуется в редакторы wysiwyg через плагин TinyMCE jquery следующим образом:
var tinymceoptions = {
script_url: '/Scripts/tiny_mce/tiny_mce.js',
theme: "advanced",
mode: "textareas",
elements: "text,html1",
theme_advanced_buttons1: "bold,italic,underline,formatselect,separator,image,insertfile,separator,blockquote,bullist,numlist,separator,undo,redo,separator,link,unlink,separator,code,insertimage",
theme_advanced_buttons2: "",
theme_advanced_buttons3: "",
theme_advanced_toolbar_location: "top",
theme_advanced_toolbar_align: "left",
theme_advanced_blockformats: "h1,h2,h3,p",
width: '100%',
content_css: Settings["tiny_mce_css"],
plugins: "advimage,advlink,autoresize,inlinepopups,imagemanager,paste",
relative_urls: false,
forced_root_block: false
};
$('textarea.editor').tinymce(tinymceoptions);
Проблема, с которой мы сталкиваемся, заключается в том, что в 95% случаев текстовые области не обновляются с помощью wysiwygсодержимое до формы POST.Мы даже пытались форсировать сохранение, просматривая каждый из редакторов mce и вызывая метод save () следующим образом, перед отправкой формы:
$('textarea.editor').each(function () {
$(this).tinymce().save();
});
Я снова обнаружил проверку POST с помощью Fiddler.что текстовая область все еще не обновляется с соответствующим значением.
Кто-нибудь знает, что может быть причиной этого?
ОБНОВЛЕНИЕ
Чтобы сделать вещи более ... интересными ... Я добавил следующие обратные вызовы и получаю странные результаты.Когда форма сообщения РАБОТАЕТ, значение getContent () меняется каждый раз, когда я нажимаю клавишу.Когда сообщение формы НЕ РАБОТАЕТ, getContent постоянно возвращает начальное значение, независимо от того, сколько контента я ввожу:
setup: function (ed) {
ed.onSaveContent.add(function (ed) {
console.debug('save content: ' + $(this).tinymce().getContent());
});
ed.onKeyPress.add(function (ed, e) {
console.debug('Editor contents was modified. Contents: ' + $(this).tinymce().getContent());
});
}
ОБНОВЛЕНИЕ 2
Становится ближе?Я обнаружил, что очистка кеша, похоже, временно «решает» проблему.Последующие посещения покажут нарушенное поведение.