Jquery ajax请求显示旧的响应

时间:2012-03-26 04:09:22

标签: php javascript jquery ajax ajax-request

您好我有一个登录系统的jQuery ajax请求。起初,它运作良好。但经过几次尝试后,它才刚刚开始出现负面反应。我检查了萤火虫,它说响应是,在我的情况下“连接”。但是ajax响应只显示“Not_connected”。我不知道该怎么办:(。请帮帮我。

这是我的jquery代码:

var data_str = "username="+usrn+"&password="+pwd;
$.ajax({
    type: "POST",
    url: "index.php?rnd=" + Math.random(),
    data : data_str,
    complete : function(xhr,data){
        if(data == 'connected'){window.location.href = 'admin.php';}
            else if(data = 'not_connected'){ error_gen.html('Invalid username or password'); }
            alert(data);
        }
});

PHP代码的AS:

$log_result = $u_obj->login_user();
if($log_result == true)/*user is connected*/
{
    echo 'connected';
    exit;/*stoping the script after sending the result*/
}
    elseif($log_result == false)/*error while logging in*/
    {
        echo 'not_connected';
        exit;/*stoping the script after sending the result*/
    }

3 个答案:

答案 0 :(得分:5)

看看这个帖子:Is it possible to cache POST methods in HTTP?

可能有标题现在使浏览器缓存响应(尽管它是POST)。

也可以添加写入

而不是rnd =“+ Math.random()
$.ajax({
    type: "POST",
    cache: false,
    ..

答案 1 :(得分:2)

可能是浏览器缓存吗? 尝试添加这个$ .ajaxSetup({cache:false});

答案 2 :(得分:0)

您使用错误的$ .ajax选项来检索结果。您应该使用成功选项。只需更改

即可
complete : function(xhr,data){

success : function(data){

它应该工作。