Ich habe ein HTML-Formular auf der Vorderseite meiner (WordPress) -Website, die ein TinyMCE-Feld anzeigen kann.Hinzufügen von tinyMCE Inhalt zu serialisierten Array (WordPress)
Das Formular selbst kann vom WP-Admin vollständig angepasst werden und daher kann die ID/der Name des tinyMCE-Felds alles sein.
Wenn das Formular abgeschickt wird, führe ich einige jQuery aus, um die Felder zu validieren (d. H. Alle, die als erforderlich konfiguriert sind, müssen Inhalt haben). Wenn die Validierung fehlschlägt, wird eine Warnung angezeigt, andernfalls wird das Formular gesendet.
Allerdings habe ich ein Problem mit diesem zu arbeiten, wenn ein tinyMCE Feld verwendet wird, in dem ich den Inhalt des Feldes in meiner JS-Datei erhalten und dann innerhalb meiner PHP-Validierungsfunktion validieren muss.
Für das Formular selbst, ich bin einfach Serialisierung der Daten. Was ich jetzt tun muss, ist die Eingabe-ID des tinyMCE-Feldes und dessen Inhalt zu diesem Array hinzuzufügen.
var $form = $("#myform");
var formData = $("#myform").serialize();
var mceContent;
var tinymceActive = (typeof tinyMCE != 'undefined') && tinyMCE.activeEditor && ! tinyMCE.activeEditor.isHidden();
if (tinymceActive) {
mceContent = tinyMCE.activeEditor.getContent();
}
So habe ich formData
als meine serialisierten Array und mceContent
enthält die Redakteure Inhalte, aber wie bekomme ich den Editor Feldnamen und deren Inhalt in formData
? Ich weiß, dass ich den Herausgebernamen mit tinymce.editors[0].id
abrufen kann, aber ich kann nicht für das Leben von mir {tinymce.editors[0].id : mceContent}
in das formData
Feld hinzufügen.
'tinyMCE.activeEditor.triggerSave()' hat einen unbekannten Funktionsfehler zurückgegeben, aber 'tinyMCE.triggerSave()' hat die Aufgabe erledigt. Vielen Dank! – Mike