使用jquery easyui datagrid请求servlet没有反应

我现在想使用jquery easyui datagrid做一个分页,功能,打算通过url请求后台的servlet返回json数据,可是怎么弄servlet就是没反应,望大侠们帮一下忙,感激不尽!!
代码如下:

 datagrid代码:
 <script type="text/javascript">
 $(function(){
 $('#list_data').datagrid({
 title:'日志列表',
iconCls:'icon-edit',    //图标
width:700,
 height:'auto',
 nowrap:false,
 striped:true,
 border:true,
 collapsible:false,
 fit:true,
 url:'listApp',    //就是在这里没反应    listApp是我的servlet
 remoteSort:false,
 idField:'fldId',
 singleSelect:true,
 collapsible:true,
 pagination:true,
 rownumbers:true,
 frozenColumns:[[
              {field:'ck',checkbox:true}        
       ]],
       toolbar:[{
        text:'添加',
        iconCls:'icon-add',
        handler:function(){
        openDialog("add_dialog","add");
        }
       }, '-', { 
             text: '修改', 
             iconCls: 'icon-edit', 
             handler: function() { 
                 openDialog("add_dialog","edit"); 
             } 
         }, '-',{ 
             text: '删除', 
             iconCls: 'icon-remove', 
             handler: function(){ 
                 delAppInfo(); 
             }  
         }],
 });
   var p=$('#list_data').datagrid('getPager');
   $(p).pagination({
   pageSize:10,
   pageList:[5,10,15],
   beforePageText:'第',
   afterPageText:'页    共{pages}页',
   displayMsg:'当前显示 {from} - {to} 条记录   共{total} 条记录',
 });
 </script>
 <body>
 <center>
  <table class="easyui-datagrid" id="list_data">  
     <thead>  
         <tr>
             <th data-options="field:'id'">id</th>   
             <th data-options="field:'ip'">ip</th> 
             <th data-options="field:'picture1Name'">图片1</th>
             <th data-options="field:'picture2Name'">图片2</th>  
             <th data-options="field:'picture1'">数据库图片1</th>  
             <th data-options="field:'picture2'">数据库图片2</th>
             <th data-options="field:'simility'">相似度</th>
             <th data-options="field:'time'">上传时间</th>    
         </tr>  
     </thead>  
     <tbody>......

下面是servlet代码:
@WebServlet("/listApp")
public class listApp extends HttpServlet {
private static final long serialVersionUID = 1L;

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request,response);
}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("---------执行servlet-----------");
String page=request.getParameter("page");
String rows=request.getParameter("rows");
System.out.println(page);
System.out.println(rows);
int intPage = Integer.parseInt((page == null || page == "0") ? "1":page);
int number = Integer.parseInt((rows == null || rows == "0") ? "10":rows);
int start=(intPage-1)*number;
getuploadLogService service=new getuploadLogServiceImpl();
ArrayList logs=service.getpageData(start, number);
Map jsonMap=new HashMap();
jsonMap.put("total", service.getCount());
jsonMap.put("rows",logs);
response.setContentType("application/json");
JSONObject result=JSONObject.fromObject(jsonMap);
System.out.println(result.toString());
response.getWriter().write(result.toString());
}

2个回答

开发工具看下返回的数据格式是否正确,一般结构是
{"total":总数量,"rows":[{....},....]}

这种结构的数据

showbo
支付宝加好友偷能量挖 回复chenhuaih: 去掉response.setContentType("application/json");这个响应头试试。如果是我发的那种格式easyui会解析出来的。没报错吗?
接近 5 年之前 回复
chenhuaih
chenhuaih 从控制台输出了一下,和你的一样,结构没有问题啊
接近 5 年之前 回复
chenhuaih
chenhuaih 从控制台输出了一下,和你的一样,结构没有问题啊
接近 5 年之前 回复

如果没进servlet,那说明你的datagrid的url写的不对,你可以试试在浏览器里面直接输入完整的url请求,看能不能进servlet。

bulusli3
lhl_lqc 回复chenhuaih: 参考别人写的例子http://www.cnblogs.com/yjhrem/articles/easyui.html多试试吧,这个只有你自己能解决。从最简单的开始一点一点调试。
接近 5 年之前 回复
chenhuaih
chenhuaih 回复lhl_lqc: 可是我目前的情况就是:json数据没问题,只是在jquery easyui datagrid中显示不出来,好多办法都试过了~~
接近 5 年之前 回复
bulusli3
lhl_lqc 回复chenhuaih: 这需要你自己查看json数据是否正确了,可以先输出一条或者几条数据,然后不分页,用最简单的方法看能不能显示。然后慢慢加上其它功能。
接近 5 年之前 回复
chenhuaih
chenhuaih 现在进入servlet了...,但是jsp页面显示不出数据,而且控制台打印出json数据也没问题...
接近 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问