JQueryEasyUI datagrid查找学习笔记

这一系列笔记以easyui的框架使用为主,后台代码为辅,如有需要,我会尽量抽时间写后台;

无需多言,直接代码(希望不要再因为我把注释大部分写到代码中而给我踢出首页):

 代码如下 复制代码

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <link href="jquery-easyui-1.3.2/themes/default/easyui.css" rel="stylesheet" />
    <link href="jquery-easyui-1.3.2/themes/icon.css" rel="stylesheet" />
    <script src="jquery-easyui-1.3.2/jquery-1.8.0.min.js"></script>
    <script src="JavaScript.js"></script><!--这个是扩展Jquery的方法-->
    <script src="jquery-easyui-1.3.2/jquery.easyui.min.js"></script>
    <script src="jquery-easyui-1.3.2/locale/easyui-lang-zh_CN.js"></script>
</head>
<body id="layoutbody" class="easyui-layout">
    <div data-options="region:'north',title:'North Title',split:true" style="height: 100px;">
    </div>
    <div data-options="region:'south',title:'South Title',split:true" style="height: 100px;">
    </div>
    <div data-options="region:'east',iconCls:'icon-reload',title:'East',split:true" style="width: 100px;">
    </div>
    <div data-options="region:'west',title:'West',split:true" style="width: 100px;">
    </div>
    <div data-options="region:'center',title:'center title'" href="CenterPage.html" style="background: #eee; overflow: hidden;">
    </div>
</body>

然后是CenterPage.html框架中的代码,也就是tabs框架中的代码:

 

 代码如下 复制代码

<script type="text/javascript" charst="utf-8">
    //因为layout框架指向href时,只取html页面body中间的部分,所以该页面这样写即可
    //有datagrid包含属性较多,所以尽量使用js的方式初始化datagrid框架
    $(function () {
        $("#dg").datagrid({
            url: "GetJson.ashx", //指向一个一般处理程序或者一个控制器,返回数据要求是Json格式,直接赋值Json格式数据也可,我以demo中自带的Json数据为例,就不写后台代码了,但是我会说下后台返回的注意事项
            iconCls: "icon-add",
            fitColumns: false, //设置为true将自动使列适应表格宽度以防止出现水平滚动,false则自动匹配大小
            //toolbar设置表格顶部的工具栏,以数组形式设置
            idField: 'id', //标识列,一般设为id,可能会区分大小写,大家注意一下
            loadMsg: "正在努力为您加载数据", //加载数据时向用户展示的语句
            pagination: true, //显示最下端的分页工具栏
            rownumbers: true, //显示行数 1,2,3,4...
            pageSize: 10, //读取分页条数,即向后台读取数据时传过去的值
            pageList: [10, 20, 30], //可以调整每页显示的数据,即调整pageSize每次向后台请求数据时的数据
            //由于datagrid的属性过多,我就不每个都介绍了,如有需要,可以看它的API
            sortName: "name", //初始化表格时依据的排序 字段 必须和数据库中的字段名称相同
            sortOrder: "asc", //正序
            columns: [[
                { field: 'code', title: 'Code', width: 100 },
                { field: 'name', title: 'Name', width: 100, sortable: true },//sortable:true点击该列的时候可以改变升降序
                { field: 'addr', title: 'addr', width: 100 }
            ]],//这里之所以有两个方括号,是因为可以做成水晶报表形式,具体可看demo
            toolbar: [{//在dategrid表单的头部添加按钮
                text: "添加",
                iconCls: "icon-add",
                handler: function () {
                }
            }, '-', {//'-'就是在两个按钮的中间加一个竖线分割,看着舒服
                text: "删除",
                iconCls: "icon-remove",
                handler: function () {
                }
            }, '-', {
                text: "修改",
                iconCls: "icon-edit",
                handler: function () {
                }
            }, '-']
        });
    });

    //点击查找按钮出发事件
    function searchFunc() {
        alert("123");
        $("#dg").datagrid("load", sy.serializeObject($("#searchForm").form()));//将searchForm表单内的元素序列为对象传递到后台
    }

    //点击清空按钮出发事件
    function clearSearch() {
        $("#dg").datagrid("load", {});//重新加载数据,无填写数据,向后台传递值则为空
        $("#searchForm").find("input").val("");//找到form表单下的所有input标签并清空
    }
</script>
<div class="easyui-tabs" fit="true" border="false">
    <div title="数据展示表格" border="false" fit="true">
        <div class="easyui-layout" fit="true" border="false">
            <!--由于查询需要输入条件,但是以toolbar的形式不好,所以我们在Layout框架的头部north中书写查询的相关信息-->
            <!-- 这里我们尽量使其展示的样式与toolbar的样式相似,所以我们先查找toolbar的样式,并复制过来-->
            <div data-options="region:'north',title:'高级查询'" style="height: 100px; background: #F4F4F4;">
                <form id="searchForm">
                    <table>
                        <tr>
                            <th>用户姓名:</th>
                            <td>
                                <input name="name" /></td>
                        </tr>
                        <tr>
                            <th>创建开始时间</th>
                            <td>
                                <input class="easyui-datetimebox" editable="false" name="subStartTime" /></td>
                            <!--由于datebox框架上面的数据必须是时间格式的,所以我们用editable="false"来禁止用户手动输入,以免报错-->
                            <th>创建结束时间</th>
                            <td>
                                <input class="easyui-datetimebox" editable="false" name="nsubEndTimeame" /></td>
                            <td><a class="easyui-linkbutton" href="javascript:void(0);" onclick="searchFunc();">查找</a></td>
                            <td><a class="easyui-linkbutton" href="javascript:void(0);" onclick="clearSearch();">清空</a></td>
                        </tr>
                    </table>
                </form>
            </div>
            <div data-options="region:'center',split:false">
                <table id="dg">
                </table>
            </div>
        </div>
    </div>
</div>

Jquery的扩展代码:

 代码如下 复制代码

var sy = $.extend({}, sy);/*定义一个全局变量*/

sy.serializeObject = function (form) { /*将form表单内的元素序列化为对象,扩展Jquery的一个方法*/
    var o = {};
    $.each(form.serializeArray(), function (index) {
        if (o[this['name']]) {
            o[this['name']] = o[this['name']] + "," + this['value'];
        } else {
            o[this['name']] = this['value'];
        }
    });
    return o;
};

时间: 2024-11-05 19:29:57

JQueryEasyUI datagrid查找学习笔记的相关文章

一份ASP学习笔记(连载)

笔记 ASP学习笔记(一) 1. 突出显示文字 <em>要显示的文字</em>2. 根据用户选择,做出相应的反应(在客户端实现) SELECT CASE Document.Form1.card.options(selectedIndex).Text Case "value1" Option1 Case "value2" Option2 ...... END SELECT3. VBScript 的 Sub函数不返回值 Function 函数将返

Perl学习笔记之CPAN使用介绍

  这篇文章主要介绍了Perl学习笔记之CPAN使用介绍,本文讲解了什么是CPAN.CPAN的目录作用介绍.CPAN安装Perl Module的两种方法等内容,需要的朋友可以参考下 CPAN(Comprehensive Perl Archive Network:全面的Perl存档网络)是查找任何Perl有关的东西的中心仓库.它包含从整个Perl社区收集来的智慧:成百上千的 Perl模块和脚本,相当于好几本书的文档,以及整个Perl发布.如果有东西是用Perl写的,而且这个东西很有用而且是自由的,

作为一个新手的Oracle(DBA)学习笔记

Oracle数据库笔记 Jack Chaing 作者QQ595696297 交流群 127591054 祝大家学习进步. 如果大家想看Word版本的可以去下载:Word排版比较清晰一些. http://download.csdn.net/detail/jack__chiang/9810532 此笔记是作者本人去年开始从一个DBA新人的学习笔记,积累至今,希望拿出来给那些对DBA有兴趣的童孩学习,大家一起努力嘛. 此笔记记录了作者工作学习中从零基础的学习的记录,和从中遇见的问题与问题的解决!很高兴

MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)

[正文] 这一周状态不太好,连续打了几天的点滴,所以博客中断了一个星期,现在继续. 我们在之前的几篇文章中学习了JDBC对数据库的增删改查.其实在实际开发中,一般都是使用第三方工具类,但是只有将之前的基础学习好了,在使用开源工具的时才能得心应手.如果对JDBC基础不太清楚,或者对本文看不太懂,建议先回顾一下本人之前的几篇和"MySQL数据库学习笔记"相关的文章.但是不管怎样,今后如果用到了数据库的增删改查,肯定是这篇文章中的代码用的最多. 一.DbUtils简介: DBUtils是ap

Java中jqGrid 学习笔记整理——进阶篇(二)_java

相关阅读: Java中jqGrid 学习笔记整理--进阶篇(一) 本篇开始正式与后台(java语言)进行数据交互,使用的平台为 JDK:java 1.8.0_71 myEclisp 2015 Stable 2.0 Apache Tomcat-8.0.30 Mysql 5.7 Navicat for mysql 11.2.5(mysql数据库管理工具) 一.数据库部分 1.创建数据库 使用Navicat for mysql创建数据库(使用其他工具或直接使用命令行暂不介绍) 2. 2.创建表 双击打

kali linux web渗透测试学习笔记

    kali linux web渗透测试学习笔记 metasploit使用方法: 启动: 第一步:启用Postgresql服务.service postgresql start 第二步:启用metasploit服务.service matasploit start 第三步:启动框架.msfconsole 一个ASP站点的sql注入 测试数字型注入点 1.网址:asp?ID+13,后面加',看看是什么数据库,然后输入1=1,1=2,得到数据库是microsoft acess 2.转用sqlma

PowerDesigner16工具学习笔记-工具介绍

原文:PowerDesigner16工具学习笔记-工具介绍 1.初始界面 1.1 .浏览窗口:本地(Local)浏览窗口.知识库(Repository)浏览窗口       Local:用于显示本地模型       Repository:用于显示知识库模型 1.2 .输出窗口:用于显示操作过程中的相关信息.         General:用于显示建模过程中的相关信息         Check Model:用于显示模型检查过程中的相关信息         Generation:用于显示模型生成

我的Android进阶之旅------&amp;gt;Android中编解码学习笔记

编解码学习笔记(一):基本概念 媒体业务是网络的主要业务之间.尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中媒体的编解码服务涉及需求分析.应用开发.释放license收费等等.最近因为项目的关系,需要理清媒体的codec,比较搞的是,在豆丁网上看运营商的规范 标准,同一运营商同样的业务在不同文档中不同的要求,而且有些要求就我看来应当是历史的延续,也就是现在已经很少采用了.所以豆丁上看不出所以然,从 wiki上查.中文的wiki信息量有限,很短,而wiki的英文内容内多,

Bash学习笔记

                                                                          第1 页        共28页 Bash shell学习笔记 .........................................................................................................................2 1. 引言................