功能问题(响应)

时间:2012-12-17 13:11:14

标签: javascript html5 jquery-mobile

我用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 oprettet),然后在警告框中按“确定”时转到index.html。

2 个答案:

答案 0 :(得分: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");
        }
    }
));

答案 1 :(得分:0)

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

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