2013-04-15 14 views
6

Hallo Ich habe ein Problem, wenn ich den Inhalt aus mehreren Textbereichen bekommen muss. Also habe ich gesehen, dass tinyMCE Methoden hat, um Inhalte aus einem bestimmten Textbereich oder aus einem aktiven Bereich zu übernehmen, aber wie werden alle Textbereiche ausgeführt, die ich habe (Anmerkung: Die Anzahl der Textbereiche ist nicht statisch).Wie man tinyMCE Inhalt aus mehr als einem Textbereich bekommt

Ich dachte für Variante, dynamische ID jedes Textbereichs zu erstellen, und wenn ich den Inhalt einreichen muss, um durch alle von ihnen zu durchlaufen. Etwas wie das:

So etwas, aber ich weiß nicht, ob dies der richtige Weg ist. Bitte helfen Sie mir, dieses Problem zu lösen. Vielen Dank im Voraus

+0

+1 gute Frage – Thariama

Antwort

10

Tinymce speichert alle seine Editoren in einem Array: tinyMCE.editors. Alles, was Sie tun müssen, ist durch sie Schleife und auf den Inhalt zugreifen:

for (i=0; i < tinyMCE.editors.length; i++){ 
    var content = tinyMCE.editors[i].getContent(); 
    alert('Editor-Id(' + tinyMCE.editors[i].id + '):' + content); 
} 
+0

Danke! Das war die Sache, nach der ich gesucht habe! – cyrat

+0

Wie wäre es, wenn die Namen der Textareas Array-Stil sind? Zum Beispiel Wenn ich log, nur das erste Element wird protokolliert: console.log (tinyMCE. get ('page_block_content []'). getContent()); – JosFabre

2

Um mehrere tinymce Instanzen zu erreichen:

http://www.tinymce.com/wiki.php/API3:property.tinymce.editors

Beispiel:

for (edId in tinyMCE.editors) 
    tinyMCE.editors[edId].save(); 

und der beste Weg (meiner Meinung nach) wäre, den Inhalt zu einem Array zu speichern:

for (edId in tinyMCE.editors) 
    array[edId] = tinyMCE.editors[edId].getContent(); 
+0

Die Array-Option ist nützlich, danke! – cyrat

Verwandte Themen