• 使用easyui中的datagrid时,通过action能够返回json数据,但是,却不能在页面中显示数据


    情况汇总:过滤不需要的参数,action返回的action不为NONE

    情况一:过滤不需要的参数

    如果是分页查询数据的话,首先将不必要的字段过滤了,如:currentPage,DetachedCriteria,pageSize.

    通过以下代码完成

         JsonConfig config = new JsonConfig();
            config.setExcludes(new String[]{"currentPage","dc","pageSize"});
            //将pageBean转化为json
            String json = JSONArray.fromObject(pb,config).toString();

    此时,返回的json数据是如下类型:

    [
        {
            "rows":[
                {
                    "decidedzones":[],
                    "deltag":"",
                    "haspda":"1"
                    ,"id":"297e95de5ef6a63e015ef6ca27030000",
                    "name":"lsi",
                    "standard":"正常",
                    "station":"tudou",
                    "telephone":"18345678999"
                }
            ],
            "total":4
        }
    ]

    如果要想在页面中接收到数据必须要将最外层的中括号去了。我是通过求其子字符串完成的。如下:

    json = json.substring(1, json.length()-1);

    然后,将其写会页面中。

    //帮pageBean写入页面中
            ServletActionContext.getResponse().setContentType("text/json;charset=utf-8");
            ServletActionContext.getResponse().getWriter().print(json);
            return NONE;

    如果,json中的key与easyui中datagrid的columns的field属性一致的话即可正确显示
    情况二:action中return不为NONE

      因为datagrid使用的是类似于ajax的请求,不会刷新页面,自然而然的不需要使用struts.xml中的result标签。return NONE;表示不会跳转界面,直接返回到jsp中

  • 相关阅读:
    Valid Anagram
    Spiral Matrix II
    Spiral Matrix
    Kth Smallest Element in a BST
    Count Primes
    javascript 判断浏览器
    javascript 数值交换技巧
    EntityFramework 6 分页模式
    JSON.parse 和 JSON.stringify
    CSS z-index
  • 原文地址:https://www.cnblogs.com/empcl1314/p/7644372.html
Copyright © 2020-2023  润新知