2012-08-22 16 views
6

Oto problem. Na mojej stronie do przedstawienia php mam formularz z wieloma polami, w tym textarea, który obecnie używa TinyMCE i mam również opcję duplikowania istniejącego formularza. Chodzi o to, że nie mogę edytować drugiego edytora, który został zduplikowany, ale edytor pojawia się w miejscu textarea. Mogę jednak edytować i zapisać 1 edytor. Nie jestem pewien, czy to błąd, czy po prostu robię coś nie tak? Próbowałem również zaktualizować TinyMCE, ale nie działało. Jakiś pomysł?Teksty TinyMCE nie można edytować

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

Jak się dodając 2nd obszar tekstowy do strony? –

+0

Korzystanie z jquery .clone() i .append() Ja również nazwał to jak textarea2 – zaw

Odpowiedz

3

Nie mogę sprawić, że .clone() zadziała, ani nic w konsoli debugowania. Jednak moje rozwiązanie robocze wygląda następująco, może to pomaga?

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 
    }); 
}​ 

Zamiast .clone() ing elementu, po prostu tworząc nową textarea i dołączenie jej do pojemnika (przy użyciu rachubę wszystkie pola tekstowe na stronie, jak to identyfikator, aby to unikalne), a następnie ponownie wywoływanie inicjalizatora tinyMCE.

Example jsFiddle

+0

wygląda dobrze Będę przetestować to dzięki człowiekowi. – zaw

+0

jego pracował przy użyciu .createElement! Wygląda na to, że jquery .clone() ma z tym jakiś problem? – zaw

1

Upewnij się, że twoje teksty mają różne identyfikatory, w przeciwnym razie nie będzie drugiej instancji edytora! Jest to bardzo ważne przy tworzeniu instancji edytora tinymce.

Powiązane problemy