0

我用 jQuery mobile 制作了一个页面,其中有一个表单。当我按下提交时,它运行以下 javascript:

$(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;
});

});

它工作正常,我的数据输入到我的数据库中。问题在于我的功能(响应)。它永远不会进入我的 if 语句,我不明白为什么。我看了又看,我的回复应该是空的?我究竟做错了什么?

我唯一想做的就是创建一个警报,说明客户已创建(Kunde blev oprett),然后在您按警报框上的确定时转到 index.html。

4

2 回答 2

0

你可以像这样使用ajax函数,

$.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");
        }
    }
));
于 2012-12-17T13:28:36.847 回答
0

为什么不只使用返回的 jqXHR 对象,$.post这意味着您不需要测试响应对象。

$.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");
});
于 2012-12-17T13:51:13.350 回答