2 Stimmen

Jquery ajax serialize Problem

Nur ein weiterer demütigender Kampf in meiner Reise, alles zu vermasseln, was mit jQuery zu tun hat:

Ich versuche, ein Formular an eine PHP-Seite create.php zu senden

Beim Klicken auf eine Schaltfläche (Überraschung) serialisiere ich ein Formular und sende es an die PHP-Seite. So:

$('#createbutton').click(function (event) {
    event.preventDefault();
    $.post("create.php", $("#creation").serialize());
});

Hier ist das Formular:

        Typ:
        Standard
        Special
        Writing

        CSC
        MAT

        Kursbezeichnung: 
        Datum von UCF erhalten: 
        LEP: 

        Erstellen

Nichts davon funktioniert, nicht einmal das event.preventDefault();. Es scheint so einfach zu sein, ich weiß einfach nicht, was ich übersehen habe. Wenn jemand einen Fehler bemerken kann, ermöglicht es mir, schlafen zu gehen. Danke.

1voto

Mike Neumegen Punkte 2416

Normalerweise gebe ich im Ereignis-Handler die false zurück, um die Standardaktion zu verhindern, aber was du hast, sollte auch funktionieren.

Sie müssen etwas Untersuchungen durchführen, um herauszufinden, warum es nicht funktioniert. console.log ist ein großartiges Tool zum Debuggen zusammen mit den Entwicklertools von Google Chrome Entwicklerwerkzeugen.

Um dies zu debuggen, würde ich zunächst die Funktion wie folgt ändern:

$('#createbutton').click(function (event) {
    console.log($("#creation").serialize()));
    return false;
});

Dann können Sie sehen, ob die serialisierten Formulardaten das sind, was Sie erwarten.

Als nächstes sollten Sie die ausgehenden Daten Ihres Ajax-Aufrufs überprüfen. Dies können Sie im "Netzwerk" -Tab in den Entwicklertools von Chrome tun.

0voto

Trevor Arjeski Punkte 2058

Ich denke, ich musste das Ereignis einfach in einer anonymen Funktion einpacken:

$(function (){
$('#createbutton').click(function () {
    $.post('create.php', $('#creation').serialize());
});
});

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X