2012-12-17 2 views
0

J'ai fait une page avec jQuery mobile où j'ai un formulaire. Lorsque j'appuie sur submit, il exécute le javascript suivant:problèmes avec la fonction (réponse)

$(document).ready(function(e) { 
$("#formOpretKunde").submit(function(){ 
    var data = {}; 
    data.kundenummer =$("#kundenummer").val(); 
    data.navn   =$("#navn").val(); 
    data.adresse  =$("#adresse").val(); 
    data.postnummer  =$("#postnummer").val(); 
    data.byNavn   =$("#byNavn").val(); 
    data.email   =$("#email").val(); 
    data.telefon  =$("#telefon").val(); 
    data.cvrCpr   =$("#cvrCpr").val(); 
    $.post("klasser/opretKunde.php", data, function(response) 
    { 
     if(response == "") 
     { 
      // Det gik godt 
      alert("Kunde blev oprettet"); 
      $.mobile.changePage("./index.html", { transition: "none"}); 
     } 
     else 
     { 
      alert("Fejl! Kunden blev ikke oprettet"); 
     } 
    }); 
    return false; 
}); 

});

Cela fonctionne très bien et mes données sont entrées dans ma base de données. Le problème est avec ma fonction (réponse). Il n'entre jamais dans ma déclaration if et je ne comprends pas pourquoi. J'ai regardé et regardé et ma réponse devrait être vide? Qu'est-ce que je fais de mal? La seule chose que je veux faire est de créer une alerte qui dit que le client a été créé (Kunde blev oprettet) et ensuite aller à index.html quand vous appuyez sur ok sur la boîte d'alerte.

+1

Y a-t-il des espaces dans la réponse? Visualisez sa longueur avec 'console.log (response.length)'. – MrCode

+0

Une simple alerte (réponse) dans un autre cas ferait – closure

+0

hmmm ses impressions 2 puis j'utilise console.log (response.length) Que dois-je faire maintenant? – user1370813

Répondre

0

Pourquoi ne pas simplement utiliser l'objet retourné par jqXHR $.post qui signifie que vous n'avez pas besoin de tester l'objet de réponse.

$.post("klasser/opretKunde.php", data) 
.done(function() { 

      // Det gik godt 
      alert("Kunde blev oprettet"); 
      $.mobile.changePage("./index.html", { transition: "none"}); 
}) 
.fail(function() { 

    alert("Fejl! Kunden blev ikke oprettet"); 
}); 
+0

Je ne comprends pas très bien la différence, ce qui n'est probablement pas une bonne idée, puisque c'est un projet scolaire sur lequel je travaille. Mais ça fonctionne. Merci de votre aide – user1370813

0

Vous pouvez utiliser la fonction ajax comme ça,

$.ajax({ 
    type: "POST", 
    url: "klasser/opretKunde.php", 
    data: data, 
    success: function(response) { 
     if(response == "") 
     { 
      // Det gik godt 
      alert("Kunde blev oprettet"); 
      $.mobile.changePage("./index.html", { transition: "none"}); 
     } 
     else 
     { 
      alert("Fejl! Kunden blev ikke oprettet"); 
     } 
    } 
)); 
Questions connexes