这个Ajax调用有什么问题吗?

时间:2012-03-12 07:45:18

标签: php ajax

我有这个Ajax调用,提交表单并根据服务器的响应显示不同的内容:

$('#applyForm').submit(function(){
var dataString = $(this).serialize();
$.ajax({
    type: "POST",
    url: "php/common/apply/apply.php",
    data: dataString,
    success: function(data) {
        if(data=='1'){
            $('#formDiv').fadeOut();
            $('#ok').fadeIn();
        }
        else if(data=='0') {
            $('#warning').fadeIn();
        }
        else if(data=='-1') {
            $('#error').fadeIn();
        }
        else {
            alert(data);
        }
    }
});
return false 
});

这是正确的做法吗?!

谢谢!

2 个答案:

答案 0 :(得分:1)

你绝对有正确的想法。调用.ajax发送请求,使用成功处理程序来处理响应。语法可能不是100%开启,但就“这是正确的做法吗?!” - 是的

答案 1 :(得分:0)

如果警报显示1,则响应不等于任何条件检查。我认为您在回复的开头或结尾有一些空格,导致data == '1'检查评估为false

尝试在PHP端修剪您的响应,或者在Javascript端执行此操作,如:

success: function(data) {

    data = $.trim(data);

    if(data=='1'){
        $('#formDiv').fadeOut();
        $('#ok').fadeIn();
    }
    else if(data=='0') {
        $('#warning').fadeIn();
    }
    else if(data=='-1') {
        $('#error').fadeIn();
    }
    else {
        alert(data);
    }
}