在easyUI中,用ajax提交数据时,如果如下图处理,会造成前端datagrid渲染异常,虽然debug时能看到数据:
$.ajax({
url: $url,
。
。
success: function (data,result) {
$widget.datagrid('loadData', data);
因为在于success: function (data,result) 的第2个参数,虽然官方资料带2个参数,但稍不注意就会异常。
纠正:如果在json数据中,做好判断,能正常取出数据,下面就手工组装JSON时加了status参数,如下:
后端:
json = "{\"status\":" + 1 + ",\"msg\":" + "\"操作成功\"" + ",\"total\":" + page.getTotalRow() + ",\"rows\":" + json;
前端:
success: function (result) {
if (result.status === 1) {
$widget.datagrid('loadData', result.rows);
ajaxLoadEnd();
$.slideMsg($.I18N('查询成功'));
}else{
ajaxLoadEnd();
$.alert($, result.msg);
}
这样,datagrid的load就正常了。