//获取待审核笑话
function GetArticle() {
    $(".btn_review").attr("disabled", "disabled");
    $.ajax({
        url: "/ajax/xx.ashx",
        type: "post",
        dataType: "json",
        async: false,
        data: { action: "Manuscript" },
        beforeSend: function (data) {
            $("#revcontent").html("<p class=\"text-center txt_img\"><img src=\"/images/load.gif\" />正在努力加载笑话……</p>");
        },
        success: function (data) {
            if (data.status == "success") {
                //已登录则加载待审核内容
                jokeid = data.jokeid;
                if (data.title != "") {
                    $("#revtitle").text(data.title);
                    $("#revtitle").show();
                } else {
                    $("#revtitle").text("");
                    $("#revtitle").hide();
                }
                $("#revcontent").html(data.content);
                if (data.img != "") {
                    $("<p class=\"text-center txt_img\"><img src=\"" + data.img + "\" /></p>").appendTo("#revcontent");
                }
                $(".btn_review").removeAttr("disabled");
            } else if (data.status == "nologin") {
                showmodel();
                $("#revcontent").html("<p class=\"text-center txt_img\">你还没有登陆或者登陆超时,请重新登陆!</p>");
                $("#revtitle").text("");
                $("#revtitle").hide();
            } else {
                $("#revcontent").html("<p class=\"text-center txt_img\">" + data.msg + "</p>");
                $("#revtitle").text("");
                $("#revtitle").hide();
            }
        },
        error: function (data) {
            alert(data.status+";" + data.responseText);
        }
    });
}
//审核笑话
function revjoke(revstatus) {
    if (jokeid == 0) {
        GetArticle();
        return false;
    }
    var jid = jokeid;
    jokeid = 0;
    $(".btn_review").attr("disabled", "disabled");
    if (revstatus == 2) {
        GetArticle();
    } else {
    $.ajax({
        url: "/ajax/xx.ashx",
        dataType: "json",
        async: false,
        type: "post",
        data: { aid: jid, result: revstatus, action: "rew" },
        success: function (data) {
            if (data.status == "success") {
                if (revstatus == 0) {
                    $("#alertrevfile").show();
                } else if (revstatus == 1) {
                    $("#alertrevsuccess").show();
                }
                setTimeout(function () {
                    $(".alertrevstatus").hide();
                    GetArticle();
                }, 1000);
            } else if (data.status == "nologin") {
                showmodel();
            } else {
                $("#revcontent").html("<p class=\"text-center txt_img\">" + data.msg + "</p>");
            }
        }
    });
    }
}
以上是jQuery的Ajax请求,
我点击换一个的时候就执行GetArticle()方法,可是怎么会有时请求回调成功,有时会到error里面去呢?求大神给指点,急啊
由于你指定dataType: "json",jquery本身对json数据要求非常严格,可能是检测到你返回的json串,不符合他的规定。
方案1:你可以换个稍微高点版本的jq脚本
方案2:查下json标准格式,重新组织自己json数据
我下载了最新版的jQuery库,还是一样的效果,json格式应该不会有问题,不然就不会出现有些能成功有些回调到error那里
@三卷天书: 这样子 ,你试下简单的json串,看看会不会走error
@不忘初心: 你后台是怎么返回json的?
@不忘初心: 这么说吧,同一条数据都有可能出现在error里面
@三卷天书: 我觉得一定是在 dataType: "json"这个条件和你后台json数据有冲突才会走error
@不忘初心: 我也这么认为,可是就找不出原因,唉
@不忘初心: @不忘初心: 我也这么认为,可是就找不出原因,好像知道了,是数据有些内容是有\n的,虽然我转义了,但是还是会出错