ajax调用不重置旧数据

时间:2013-09-03 15:49:27

标签: ajax jquery

我在我的网站上使用ajax,它工作正常,但下次调用时没有成功数据,我的意思是如果第一次调用,数据是1和0,第二次调用数据是0和1,那么它是在第二次通话中显示1,0,0,1,

function checkform(){
var userid = $("#userid").val();
var email = $("#email").val();
$.ajax({
    url:path+"ajax_getpass.php",
    data:{userid : userid, email : email},
    cache:'false',
    type:'POST',
    dataType:"json",
    success: function(data_send){
        $(document).ajaxComplete(function(event, request) {
            //data = $.parseJSON(data);
            alert(data_send.email);
            alert(data_send.userid);
        });
    }
});
return false;
}
请告诉我我错在哪里。

1 个答案:

答案 0 :(得分:0)

这是因为每次AJAX请求成功时,您都会向ajaxComplete()添加越来越多的函数。因此,当您第一次调用成功代码时,ajaxComplete()会调用一个函数。在下一个请求中,添加了另一个函数,因此将调用两个函数。

请改用此代码:

$.ajax({
    url:path+"ajax_getpass.php",
    data:{userid : userid, email : email},
    cache:'false',
    type:'POST',
    dataType:"json",
    success: function(data_send){
        alert(data_send.email);
        alert(data_send.userid);
    }
});

当您想要响应代码的其他部分发送的AJAX请求时(例如,在您无法指定成功功能的地方),您只需要$.ajaxComplete()

将其视为一种全球“成功”功能。