`
songzhan
  • 浏览: 247731 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

4月22 -- 关于EasyUI

阅读更多

最近,在项目中用到JQuery EasyUI DataGrid,它封装了表格的实现,为我们提供很多便利,让我们的开发速度有了一定的提高。(PS:我用的是spring MVC 框架 和velocity).  

  注:这里简单的提下解释下velocity。velocity是基于java的一种页面模板引擎,支持#if #else #foreach等写法的前台文件。$link.contextPath是该引擎支持的一种默认写法,可以取得应用程序执行根路径。

Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。 当Velocity应用于web开发时,界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只 关注页面的显示效果,而由java程序开发人员关注业务逻辑编码。Velocity将java代码从web页面中分离出来,这样为web站点的长期维护提 供了便利,同时也为我们在JSP和PHP之外又提供了一种可选的方案。 Velocity的能力远不止web站点开发这个领域,例如,它可以从模板(template)产生SQL和PostScript、XML,它也可以被当 作一个独立工具来产生源代码和报告,或者作为其他系统的集成组件使用。Velocity也可以为Turbine web开发架构提供模板服务(template service)。Velocity+Turbine提供一个模板服务的方式允许一个web应用以一个真正的MVC模型进行开发。

 

好的,Velocity不是今天的重点,下面开始easyUI

1、数据的提取和显示

 

    ##搜索栏

        <div id="searchAccountBar" style="padding:5px;height:auto">
            <form action="/dcs/yng/finance/all_account_balance/list.do" method="post" id="accountSearchForm">
                <table>
                    <tr>
                        <td class="align-right">经销商代码:</td>
                        <td>
                            <input class="text-input small-input" type="text" id="agentCode" name="agentCode"
                                   value="$!{bo.agentCode}"/>
                        </td>
                        <td class="align-right">经销商全称:</td>
                        <td>
                            <input class="text-input small-input" type="text" id="agentName" name="agentName"
                                   value="$!bo.agentName"/>
                        </td>
                    <tr>
                            <button type="button" id="search">查询</button>
                        </td>
                    </tr>
                </table>
            </form>
        </div>

 上面是我们普通的搜索栏代码,下面这段代码,是table数据展示,easyui有许多封装好的属性,非常方便,我们可以根据自己的需要,来搭配属性。

 

 

<table id="accountSearchTable" class="easyui-datagrid" title="" style="height:500px"
               data-options="rownumbers:true,
               singleSelect:true,    ##单选
               url:'/dcs/yng/finance/all_account_balance/list_json.do',       ##链接
               toolbar:'#searchAccountBar'"  ##搜索及工具栏
               pagination="true"      ##翻页
               rownumbers="true"
               showFooter="true"
               fitColumns="false">
            <thead data-options="frozen:true">     ##表头

            <tr>
                <th data-options="field:'agentName',width:225,align:'center'">经销商全称</th>
            </tr>
            </thead>
            <thead>
            <tr>
                <th data-options="field:'agentCode',width:70,align:'center'">经销商代码</th>

                <th data-options="field:'agentName',width:72,align:'center'" formatter="formatPrice">经销商名称</th>
            </tr>
            </thead>
        </table>

 这里的url,就是请求链接,当我们点击之前上面的搜索栏里,查询按钮时,就会触发我下面这个js的点击事件,然后easyui,就会根据我们配的属性,将搜索栏的参数,一起通过url,发送到后台。

 

 

$("#search_account_btn_json").click(function () {
            $('#accountSearchTable').datagrid('load', {
                agentCode:$('#agentCode').val(),
                agentName:$('#agentName').val()
            });
        });

 easyui 里的DataGrid,就是通过url获取数据的,。它获取的数据返回的要是json字串。JSON字串必须按照DataGrid定义的数据格式进行拼装。特别强调的是,JSON字串中的total域的值是数据的条数,用于数据的分页。

@RequestMapping("/dcs/yng/finance/all_account_balance/list_json")  
  public @ResponseBody
    JSONObject listJson(AgentAccountBO bo,Integer page, Integer rows, Model model, HttpServletRequest request, HttpServletResponse response) {

        JSONObject json = new JSONObject();
        
        List<AgentAccountBO> list = agentAccountYNGService.query(bo);
        
        
        JsonBinder binder = JsonBinder.buildNonNullBinder();
        String beanString = binder.toJson(list);

        json.put("rows", (null != list && !list.isEmpty())?beanString:"");
        json.put("total", list.size());
      

        return json;
    }

 上面这段代码,就是将list数据,拼成DataGrid定义的数据格式,数据的分页分为前台分页和后台分页,前台分页,DataGrid已经封装好了。 DataGrid定义了两个参数: rows(每页的条数),page(当前的页数),这两个参数分别对应属性pageSize,pageNumber。用户可以在 pageSize,pageNumber属性中设置,也可以不设置,这样就取默认值。获取数据后,DataGrid就会刷新,将后台数据在table中展示出来

 

分享到:
评论

相关推荐

    easyui中文帮助文档

    4. **easyui-validatebox (字段验证)** `easyui-validatebox` 提供了表单字段的验证功能,能够确保用户输入的数据符合特定规则,如非空、邮箱格式、手机号码等。通过配置验证规则,可以实现对输入数据的有效性检查...

    jQuery EasyUI 1.5.5 版 API 中文版

    jQuery EasyUI 是一款基于 jQuery 的前端开发框架,它简化了网页界面的构建,提供了丰富的组件和功能,使得开发者能够快速创建交互式、响应式的Web应用。1.5.5 版本是该框架的一个稳定版本,它包含了多个改进和修复...

    EasyUI使用-中文手册

    EasyUI 是一个基于 jQuery 的轻量级前端框架,主要用于快速构建高效、美观的 Web 应用界面。这个中文手册提供了全面的指南,帮助开发者更好地理解和使用 EasyUI。 1. **EasyUI 的基本概念** EasyUI 提供了一套完整...

    jquery easyui1.3.3,api+demo

    4. **Responsive Design**:响应式设计示例,展示EasyUI如何适应不同设备和屏幕尺寸。 5. **Customization**:自定义样式和行为,如何通过CSS和JavaScript扩展或修改组件的默认外观和交互。 **标签解析** "easyui...

    学生信息管理系统(JSP+Servlet+EasyUI)--入门项目

    学生信息管理系统是一个典型的Web应用程序,它使用了Java技术栈中的JSP、Servlet和EasyUI来构建。这个入门项目旨在帮助初学者理解如何将这些技术整合到一个实际的应用中,实现数据的展示、增删改查等基本功能。下面...

    jQuery EasyUI中的日期控件DateBox修改方法

    months: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"], year: new Date().getFullYear(), month: new Date().getMonth() + 1, current: new Date(),...

    EasyUI修改DateBox和DateTimeBox的默认日期格式示例

    在 HTML 中,可以通过 `data-options` 属性设置这两个函数,如 `&lt;input class="easyui-datetimebox" data-options="formatter:ww4,parser:w4" style="width:200px;"&gt;`。 通过以上方法,我们可以轻松地调整 EasyUI ...

    学生信息管理系统(SSH+EasyUI)---入门项目

    **SSH+EasyUI 学生信息管理系统入门项目详解** SSH(Struts2、Spring、Hibernate)是一个经典的Java Web开发框架组合,它为开发者提供了强大的功能和灵活的架构,而EasyUI则是一个基于jQuery的UI库,用于快速构建...

    jQuery EasyUI.pdf

    ### 关于jQuery EasyUI #### 一、简介 jQuery EasyUI 是一个基于 jQuery 的 UI 插件集合。它简化了用户界面组件的开发过程,并提供了一系列丰富的用户界面控件,如对话框、网格、标签页等。这些组件不仅功能强大,...

    2018.3easyui

    这个名为 "2018.3easyui" 的压缩包包含的是 EasyUI 的一个特定版本,可能发布于2018年3月。由于官方下载站点有时可能会访问困难,这个压缩包提供了一个便捷的下载途径。 在压缩包内,我们可以找到以下文件: 1. **...

    前端easyUI日期选择器(日/周/月)示例

    前端jquery+easyUI实现的日期选择器。 博文地址:https://blog.csdn.net/wanghuiWHI/article/details/135648572 Demo简要: 1.日期选择器可以提供日选择器、周选择器、月选择器 2.日选择器最大31天,选择起始日期后...

    easyui_开发文档,自己总结

    EasyUI 是一个基于 jQuery 的前端框架,用于快速构建用户界面。它提供了丰富的组件,包括表单、窗口、菜单、布局等。以下是对标题和描述中提到的一些 EasyUI 组件的详细说明: 1. **日期框组件** - 基本日期框组件...

    官方EasyUI皮肤最新模板20161201

    这个“官方EasyUI皮肤最新模板20161201”压缩包包含了2016年12月1日时官方发布的最新EasyUI皮肤模板,适用于那些希望快速搭建用户界面的开发者。 1. **EasyUI组件**:EasyUI 提供了诸如窗口(Window)、表格(Grid...

    jQueryEasyui1.2.6

    4. **表单验证**:jQuery EasyUI 提供了表单验证功能,可以自定义验证规则,确保用户输入的数据符合预期格式,从而提高应用的健壮性。 5. **对话框(Dialog)**:Dialog组件不仅可以用于显示信息,还可以作为独立的...

    jQuery EasyUI 1.4 离线简体中文API文档 含完整开发工具包+皮肤+扩展+演示

     时隔4个月之久 EasyUI终于迎来大版本更新了 本次更新内容诸多 除了常规维护外 还新增了3个新组件 都很实用 详细的可以阅读更新说明 里面给了详细的解读 另外 从该版本开始我将会逐步的将EasyUI官方以及第三方较好...

    jquery1.7.2_20120420中文版 + EasyUi 文档

    jQuery 1.7.2是该库的一个较早版本,发布于2012年4月20日。这个版本引入了一些关键的改进和修复,使得开发者能够更稳定地在项目中使用。主要特性包括: 1. **选择器增强**:jQuery提供了强大的CSS选择器,使得...

    struts2+spring+mybatis+easyui的实现

    总的来说,"struts2+spring+mybatis+easyui"的实现是一个标准的Java Web项目结构,它利用Maven进行构建管理,通过整合四个组件,实现了后端的业务逻辑处理、数据访问和前端的用户界面展示。这种架构在实际开发中具有...

    jQuery EasyUI 1.4.4 离线简体中文API文档 含完整开发工具包+皮肤+扩展+演示

    本次更新内容主要是BUG修复和功能改进,相隔4个月又发布了新版本,这次更新更像是例行公事,不过好在修复了很多BUG,另外需要说一下,EasyUI框架当中其实官方还隐藏了不少API没有开放出来,有些朋友建议我把整理一下...

    解决easyui datagrid控件的日期显示问题1

    在使用EasyUI的datagrid控件时,我们常常会遇到日期数据在前端显示为`object`类型的问题,这主要是因为服务器返回的日期数据没有被正确格式化。在标题和描述中提到的解决方案,主要涉及到以下几个关键点: 1. **...

Global site tag (gtag.js) - Google Analytics