jquery - ejemplos - tinymce no editable
TinyMCE JQuery Plugin no siempre está actualizando textareas (1)
Decidí que el mal uso de head.js estaba causando el problema. Estábamos cargando algunos elementos a través de ajax en head.ready () y aplicando el tinyMCE durante $ .ready (). Al cambiar $ .ready () a head.ready () se solucionó el problema.
Tenemos un formulario que tiene bastantes áreas de texto (en algunos casos, hasta 20). Cada una de estas áreas de texto se transforman en editores wysiwyg a través del plugin jquery de TinyMCE de la siguiente manera:
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);
El problema que estamos teniendo es que aproximadamente el 95% del tiempo, las áreas de texto no se actualizan con los contenidos de wysiwyg antes de formar el POST. Incluso hemos intentado forzar el guardado pasando por cada uno de los editores de MCE y llamando al método save () de la siguiente manera, antes de enviar el formulario:
$(''textarea.editor'').each(function () {
$(this).tinymce().save();
});
Comprobando el POST nuevamente con Fiddler, encontré que el área de texto todavía no se está actualizando con el valor apropiado.
¿Alguien tiene alguna pista sobre qué podría estar causando esto?
ACTUALIZAR
Para hacer las cosas más ... interesantes ... He agregado las siguientes devoluciones de llamada y obtengo resultados extraños. Cuando la publicación del formulario FUNCIONA, el valor de getContent () cambia cada vez que presiono una tecla. Cuando la publicación del formulario NO FUNCIONA, getContent devuelve constantemente el valor inicial, sin importar cuánto contenido ingrese:
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());
});
}
ACTUALIZACIÓN 2
¿Acercarse? He descubierto que borrar el caché parece "solucionar" el problema temporalmente. Las visitas posteriores mostrarán el comportamiento roto.