关于客户端AJAX同步,异步的使用
最近在项目中经常用到前端页面用AJAX请求后端数据,但是总会出现页面赋值为undefined的情况。
研究后发现,由于AJAX都是默认异步操作的,即在你赋值的同时,页面会向后台获取数据,所以造成赋值失败的原因。只需把异步改为同步即可
1 function getEntityById(id) { 2 var data_; 3 $.ajax({ 4 type: "get", 5 url: "../../BaseManage/CaseTransfer/getEntity?id=" + id, 6 dataType: "json", 7 async: false, 8 success: function (data) { 9 data_ = data; 10 }, 11 error: function () { 12 console.log("error") 13 } 14 }) 15 return data_; 16 }