2012-08-22 21 views
6

Aquí está el problema. En mi página de envío de php, tengo un formulario con múltiples campos, incluido un área de texto que actualmente utiliza TinyMCE y también tengo una opción para duplicar el formulario existente. El problema es que no puedo editar el segundo editor que se duplicó, pero el editor aparece en el lugar de la zona de texto. Sin embargo, puedo editar y guardar el primer editor. No estoy seguro de si es un error o simplemente yo estoy haciendo algo mal? Traté de actualizar TinyMCE también, pero no funcionó. ¿Alguna idea?TinyMCE textarea no puede editar

function initTinyMCE() { 
    tinyMCE.init({ 
     mode : "textareas", //mode : "exact", elements : "mytextarea" 
     theme : "simple" 
    }); 
} 
initTinyMCE(); 


$(document).ready(function(){ 
    $('a#addmore').live('click', function(){ 

     //*clone the existing form and inserting form here* 
     initTinyMCE(); 
    }); 

    $('a#toSubmit').live('click', function() { 
     tinyMCE.triggerSave(); 
     $('.editwork-form').submit(); 
}); 

}); 
+0

¿Cómo estás añadiendo la segunda área de texto de la página? –

+0

Usando jquery .clone() y .append() También lo llamé como textarea2 – zaw

Respuesta

3

Parece que no puedo hacer que .clone() funcione, nada en la consola de depuración tampoco. Sin embargo, mi solución de trabajo es la siguiente, ¿quizás esto ayude?

initTinyMCE(); 

$("#append").live("click", function() { 
    var ta_count = $("textarea").length; 

    var elem = document.createElement("textarea"); 
    $(elem).attr("id", ta_count.toString()); 
    $(elem).appendTo("#ta_container"); 

    initTinyMCE(); 
}); 

function initTinyMCE() { 
    tinyMCE.init({ 
     mode: "textareas", 
     theme: "simple", 
     theme_advanced_path: false 
    }); 
}​ 

En lugar de .clone() ing elemento, sólo estoy creando un nuevo textarea y añadiendo al contenedor (utilizando el recuento de todas las áreas de texto en la página como su ID para que sea único), luego vuelva llamando al inicializador tinyMCE.

Example jsFiddle

+0

se ve bien Lo probaré gracias hombre. – zaw

+0

funciona con .createElement! Parece que jquery .clone() tiene algún problema con eso? – zaw

1

Asegúrate de que tus áreas de texto tengan diferentes ID, de lo contrario no habrá una segunda instancia de editor. Esto es algo crucial al crear instancias de editor de tinymce.

Cuestiones relacionadas