Textarea in einem Formular sendet nicht per POST mit jQuery AJAX

8

Aus einem Grund, der mir unbekannt ist, übergibt mein Formular den eingegebenen Text nicht in mein <textarea> .

Ajax-Code:

%Vor%

Die Eingaben funktionieren einwandfrei und werden korrekt in meine Datenbank übertragen.

Das Formular lautet:

%Vor%

Und was ich bekomme, wenn ich in Firebug inspiziere, ist der POST: date=09%2F25%2F1986&title=Title&blogContent=

Wie Sie sehen können, ist der BlogContent leer. Warum ist das?

    
mdance 31.07.2012, 21:11
quelle

6 Antworten

5

Ich habe es versäumt zu erwähnen, dass ich einen WYSIWYG-Editor an den Textbereich angeschlossen hatte, den nicEditor. Anscheinend gibt es einen Fehler, der jQuery gezwungen hat, den Textbereich nicht zu serialisieren. Sobald der NicEditor entfernt wurde, hat es funktioniert. Danke für die Hilfe.

    
mdance 31.07.2012, 21:28
quelle
1

Ändern:

%Vor%

An:

%Vor%     
hsuk 04.03.2013 11:41
quelle
0

Ihr Textfeldname ist blogContent, aber die ID ist blogBody. Der # Selektor verwendet die ID, nicht den Namen.

    
Phillip Harrington 02.08.2012 18:35
quelle
0

Sie sollten Ihren Editor nicht entfernen müssen - sie arbeiten normalerweise mit JS, um die ausgeblendete Textfläche nach jedem Tastendruck zu aktualisieren, oder wenn das Formular übermittelt wird, sollte das keinen Unterschied machen, vorausgesetzt, der Editor erhält das richtige Bit .

Ich kann mir vorstellen, dass das Problem so ist, wie es Phillip vorgeschlagen hat - dass sich Ihre ID- und Namensattribute unterscheiden. Alle anderen passen gut zusammen. Wenn es serialisiert, muss es die IDs verwenden, und vermutlich erwarten Sie in Ihrem Skript auf der anderen Seite, dass die Namen trotzdem kommen (was eine normale Formularübergabe tun würde).

Da Sie über $ POST senden, tun Sie einfach eine var_dump ($ _ POST); in Ihrem Skript und loggen Sie das dann auf der Konsole oder alarmieren Sie es in Ihrem JavaScript - sehen Sie, was genau über AJAX zu Ihrem Skript gesendet wird.

Wenn der Textbereich unter keinem Namen vorhanden ist, dann wissen Sie, dass das Problem definitiv der Editor ist. Wenn dies der Fall ist, versuchen Sie manuell, die Methoden für nicEditor aufzurufen, die den versteckten Textbereich aktualisieren.

    
Lukey 27.09.2012 11:49
quelle
0

Wenn Sie ajaxSubmit verwenden, funktionieren POST-Daten aus einem Textbereich eines Texteditors nicht.

Sie müssen also den Wert & amp; setze es in das versteckte Feld, dann kannst du den POST-Wert wie folgt erhalten:

%Vor%

vor ajaxsubmit

%Vor%     
Arnab 22.04.2013 12:36
quelle
0

Fügen Sie return false onsubmit

hinzu %Vor%

Rufen Sie Ajax auf Knopf klicken

%Vor%     
Tariq 31.07.2012 21:32
quelle

Tags und Links