在easyui datagrid数据加载时,格式化单元格中内容调用ajax请求后台数据,需要设置ajax请求方式为同步请求,否则在ajax还没运行完时,数据加载成功,格式化的未成功,就导致没有数据。
在ajax加载成功时,直接return单元格的内容失败,需要在formatter的作用域里面定义变量,在success里面赋值,在操作数据。
field: 'TJ', title: '教员', formatter: function (value, row) {
var Name = "";
$.ajax({
type: "post",
url: "/TrainClasses/SelectNameByID",
data: {
id: row.TJ,
},
async:false,//设置ajax请求方式为同步请求
dataType: "json",
success: function (data) {
Name=data[0].T_Name//将ajax成功后返回的数据给全局变量
},
});
return Name;
}