JQuery Anhang-Wert für Textarea funktioniert nicht, bis AJAX eine zweite Zeit eingereicht hat
-
15-11-2019 - |
Frage
Ich habe einen jQuery-JHTML-WYSIWYG-Editor in einem Formular und muss die Leistung manuell an einen TextArtaea anhängen.Das Formular wird über AJAX eingereicht.Die UpdateText-Funktion wird aufgerufen, um sich in der WYSIWYG-DIV zu ergreifen, und platzieren Sie es in einem TextArtarea, um AJAX zu aktivieren, um ihn zu senden.Ich benutze die AJAXForm "BeforeBmit" Rückruf, um diese Funktion abzufeuern. generasacodicetagpre.
Dies funktioniert nicht an der ersten Sendung ... Sie müssen auf zweimal einreichen, bevor UpdateText tatsächlich feuern.Hat jemand irgendwelche Ideen?
danke,
Lösung
When you hit submit this is what happens:
- Form data is being collected
- beforeSubmit fires, and the collected form data is being passed as the first parameter
- You're changing the value of textarea, but it's too late, because data has been already collected
Instead of changing textarea's value you should modify formData object.
UPD. Try this:
for (var i in formData) {
if (formData[i].name == '...name of your textarea here...') {
formData[i].value = ...wysiwyg's html...
}
}
Even easier, remove the hidden textarea and use this:
function updateText(formData, jqForm, options) {
formData.push({name: 'textarea_name', value: .... })
return true;
};