Javascript 功能问题(响应)

Javascript 功能问题(响应),javascript,html,jquery-mobile,Javascript,Html,Jquery Mobile,我已经用jquerymobile创建了一个页面,其中有一个表单。当我按下submit时,它运行以下javascript: $(document).ready(function(e) { $("#formOpretKunde").submit(function(){ var data = {}; data.kundenummer =$("#kundenummer").val(); data.navn =$("#navn").val(); d

我已经用jquerymobile创建了一个页面,其中有一个表单。当我按下submit时,它运行以下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 Opretet),然后在通知框上按ok时转到index.html。

您可以像这样使用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");
        }
    }
));

为什么不直接使用
$.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");
});

回复中是否有空格?使用
console.log(response.length)
查看它的长度。在其他情况下,一个简单的警报(response)会打印出2个字符,然后我使用console.log(response.length)现在该怎么办?很明显,您的响应有2个字符长。php答案中似乎有空格。检查脚本末尾是否有其他空格或换行符。这可以解决问题。我不太明白区别是什么,这可能不是一个好主意,因为这是一个我正在进行的学校项目。但它是有效的。谢谢你的帮助