easyui datagrid 如何接受后台返回的json格式字符串或者json对象


RT:
后台代码:

   
  @RequestMapping("/showList")
  
public ModelAndView selectAllAuth(HttpServletResponse response,AuthModel model) throws Exception{
List<AuthBean> lstAuth = authService.queryByList(model);
//设置页面数据
Map<String,Object> jsonMap = new HashMap<String,Object>();
jsonMap.put("total",model.getPager().getRowCount());
jsonMap.put("rows", lstAuth);

String jsonStr = HtmlUtil.returnJsonString(response, jsonMap);

Map<String, Object> context = getRootMap();
context.put("authJson", jsonStr);
return forword("/user/auth/authmgr", context);
}

jsp页面代码:

   
  $(document).ready(function(){
  
$('#aList').datagrid({
url:'showList',
method: 'POST',
fit:true,
loadMsg:'正在努力为您查找中……',
sortName: 'authName',
sortOrder: 'desc',
remoteSort: true,
idField:'id',
columns:[[
{field:'id',checkbox:true},
{field:'authcd',title:'权限代码',width:100,align:'center',sortable:true},
{field:'authN',title:'权限名称',width:100,align:'center',sortable:true},
{field:'patId',title:'父节点ID',width:80,align:'center',sortable:true,
styler:function(value,row,index){
if(value != 0){
return 'color:red;';
}
}
},
{field:'url',title:'请求路径',align:'center',width:200,sortable:true},
{field:'description',title:'备注',width:250,align:'center',sortable:true}
]],
toolbar:'#toolbar',
pagination:true,
fitColumns:true,
rownumbers:true
});
});

通过上面的代码后台可以返回一个easyui datagrid格式的json字符串。但是前台页面就是接受不到。
后台代码换成转换成json对象的数据返回后,前端还是接受不到!
而且datagrid加载时执行了onLoadError这里的方法,为什么啊?前端js写的有什么问题吗?
现在来看应该是action代码的问题,不知道到底哪里错了呢!!

jQueryEasyUI json

Sayori 11 years, 8 months ago

问题已解决。

忘了用PrintWriter out= response.getWriter();
打印到前端。

O(∩_∩)O哈哈~

武林萌小猪 answered 11 years, 8 months ago

Your Answer