用ajax获得数据,可是页面显示的时不加个alert就显示不出来,随意加个alert就可以 解决办法

来源:互联网 发布:ios 高仿今日头条源码 编辑:程序博客网 时间:2024/05/01 12:19

这是因为Ajax的异步处理的引起的 只需要把jquery中的$.ajaxSettings.async = false; 就可以了 默认为true;

AJax可以通过两种方法访问服务器,即同步(脚本会停留并等待服务器发送回复然后再继续) 和 异步(脚本允许页面继续基进程并处理可能的回复)

/*
【异步提交返回处理结果】
Ajax获取结果
*/
function ajax_GetJsonData() {
    $.ajaxSettings.async = false; 
    $.ajax({
        type: "POST", //用POST方式传输
        dataType: "json", //数据格式:JSON
        url: 'IMenu.aspx', //目标地址
        data: "action=getmenu",
        beforeSend: function () { }, //发送数据之前
        complete: function () { }, //接收数据完毕
        error: function (XMLHttpRequest, textStatus, errorThrown) { alert(errorThrown); },
        success: function (msg) {
            $("#menutdiv").empty();
            $("<font>测试</font>").appendTo("#menudiv");
        

        }
    });
}