2017-10-15 2 views
0

Ich las einen ähnlichen Beitrag, aber die Person benutzte Perl und etwas ELSS, also half es mir nicht. Meine Frage ist, wie kann ich ein Formular mit Knoten js/pug senden, aber auf der gleichen Seite bleiben.Senden von Formulardaten ohne Verlassen der Seite. Express, Node.js, Pug

Im Mops des Verfahrens bilden, wird auf POST gesetzt und Aktion/profile in meinem NodeJS gesetzt ich bin ist

router.post("/profile", req, res, next){ 
     return res.redirect("back") 
    } 

Das Problem mit, dass all dies die Seite tut, ist neu. Ich möchte auf der Seite bleiben und einfach eine Meldung mit dem Betreff "Profilaktualisierung" anzeigen.

+1

Sie müssen führen Sie eine Ajax tun https einreichen: // Stackoverflow .com/questions/1200266/submit-a-form-using-jquery –

Antwort

0

Dann keine Umleitung zurückgeben. Nehmen Sie einfach die Postdaten und bearbeiten Sie sie, Sie können beispielsweise den Status der Operation zurückgeben. Dann sollten Sie jedoch eine AJAX-Abfrage anstelle des Bestandsformulars verwenden, die Sie immer zur Aktions-URL weiterleitet.

router.post("/profile", req, res, next){ 
 
    return updateProfile(req.body); // true or false 
 
}

Und in jQuery, zum Beispiel, können Sie eine AJAX-Request

$.ajax({ 
 
    type: "POST", 
 
    url: "/profile", 
 
    data: profile_form_data_object, 
 
    success: function(data) { 
 
    alert("Result of the profile update was: " + data); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

+0

aber dann wie kann ich die gesammelten Daten verwenden aus dem Formular, um es in meine Mongo-Datenbank einzufügen. –

Verwandte Themen