在Ajax中回调函数success中无法给之外的变量赋值解决

$.post({
        url: "/Home/currentPage",
        data: {"currentPage": CP},
        success: function (data) {
            for ( i in data){
                dataHtml +=  "<div  class=\"col-md-3 rounded shadow p-3 mb-5\">"
                $.post({
                    url:"/Home/img",
                    data:{"name":data[i]["name"]},
                    async: false,
                    success:function (img) {
                        dataHtml+="<a href='/Home/GetBook?name="+data[i]['name']+"'><img src="+img+" style=\"width: 100%;height: 100%\">"
                    }
                })
                dataHtml += "<span >"+data[i]['name']+"</span></a>"
                dataHtml += "</div>"
            }
            each(CP)
            $("#neirong").html(dataHtml);
        }
    })

只需要加给async:false  这段代码意思为Ajax 是否为异步 true 为异步 false为同步,默认为异步

$.post({
url: "/Home/currentPage",
data: {"currentPage": CP},
success: function (data) {
for ( i in data){
dataHtml += "<div class=\"col-md-3 rounded shadow p-3 mb-5\">"
$.post({
url:"/Home/img",
data:{"name":data[i]["name"]},
async: false,
success:function (img) {
dataHtml+="<a href='/Home/GetBook?name="+data[i]['name']+"'><img src="+img+" style=\"width: 100%;height: 100%\">"
}
})
dataHtml += "<span >"+data[i]['name']+"</span></a>"
dataHtml += "</div>"
}
each(CP)
$("#neirong").html(dataHtml);
}
})
posted @ 2021-01-12 15:49  别想这么多  阅读(623)  评论(0)    收藏  举报