zoukankan      html  css  js  c++  java
  • 第一节:EasyUI样式,行内编辑,基础知识

    一丶常用属性

     1     $('#j_dg_left').datagrid({
     2                 url: '/Stu_Areas/Stu/GradeList',
     3                 fit: true, // 自动适应父容器大小
     4                 singleSelect: true, //设置是否只能单选
     5                 loadMsg: '请稍等,正在拼命加载...',//加载数据的时候显示提示消息
     6                 fitColumns: true, //自动收缩列的大小
     7                 rownumbers: true, //是否加行号
     8               pagination: true, //是否显式分页
     9                 pageSize: 5, //页容量,必须和pageList对应起来,否则会报错
    10                 pageNumber: 1, //默认显示第几页
    11                 pageList: [5, 10, 15],//分页中下拉选项的数值
    12                 checkOnSelect: true,//当用户点击行的时候该复选框就会被选中或取消选中。
    13                 selectOnCheck: true,//单击复选框将永远选择行
    14                 //固定列
    15                 frozenColumns: [[
    16                      { field: 'gName', title: '年级名称', 150, align: 'center' },
    17                 ]],
    18                 //非固定列
    19                 columns: [[
    20                      { field: 'gExplain', title: '年级说明',  150, align: 'center' },
    21                 ]],
    22                 //单击单元格
    23                 onClickRow: function (index, row) {
    24                     dg_right.datagrid('load', {
    25                         gId: row.gId,
    26                     });
    27                     gId = row.gId;
    28                 },
    29                 onLoadSuccess: function () {
    30                     //修改全选按钮
    31                     $(".datagrid-header-check").html("序号");
    32                     $(".datagrid-header-check").parent().prev().html("");
    33                     $(".datagrid-header-check").attr("style", "71px")
    34                     var rows = dg_left.datagrid('getRows');
    35                     if (rows.length > 0) {
    36                         pageUtil.LoadGrid_Right(rows[0].gId);
    37                     }
    38                 },
    39                 toolbar: [{
    40                     text: '刷新',
    41                     iconCls: 'fa fa-refresh',
    42                     handler: function () {
    43                         pageUtil.Refresh();
    44                     }
    45                  }
    46                  ,
    47                   '-', {
    48                       text: '取消选中',
    49                       iconCls: 'fa fa-undo',
    50                       handler: function () {
    51                           pageUtil.CancelSelected();
    52                       }
    53                   },
    54                    '-', {
    55                        text: '添加',
    56                        iconCls: 'fa fa-plus',
    57                        handler: function () {
    58                            pageUtil.AddStudent();
    59                        }
    60                    },
    61                    '-', {
    62                        text: '编辑',
    63                        iconCls: 'fa fa-edit',
    64                        handler: function () {
    65                            pageUtil.EditStudent();
    66                        }
    67                    },
    68                   '-', {
    69                       text: '删除',
    70                       iconCls: 'fa fa-remove',
    71                       handler: function () {
    72                           pageUtil.DelStudent();
    73                       }
    74                   },
    75                 ],
    76     })
    View Code

    内容:

    {
         title: '内容说明', field: 'ContentRemark', align: 'center',  350, sortable: true,
                       formatter: function (value) {
                           if (value) {
                               value = value.replace(/<[^>]*>/ig, "");
                               value = value.replace(/&(nbsp|#160);/ig, "");
                               if (value.length > 25) {
                                   value = value.substring(0, 15) + "......";
                               }
                               return value;
                           }
                       }
    },

    修改复选框和序号样式:

                    onLoadSuccess: function () {
                        //修改全选按钮
                        $(".datagrid-header-check").html("序号");
                        $(".datagrid-header-check").parent().prev().html("");
                        $(".datagrid-header-check").attr("style", "56px");
                    },

    二丶行内编辑

    var editIndex = undefined;定义全局变量

    1.单元格触发事件

              onClickCell: function (index, field, value) {
                        if (editIndex == undefined) {
                            if (field == "content") { // 判断是否是field为content列,如果不是固定某列的话,不需要判断
                                $(this).datagrid('beginEdit', index);
                                var ed = $(this).datagrid('getEditor', { index: index, field: field });
                                $(ed.target).focus();
                            }
                            editIndex = index;
                            //alert("点击触发editIndex:" + editIndex);
                        }
                        else if (editIndex != undefined) {//如果不相等,说明已经打开编辑器了,需要关闭编辑器
                            $(this).datagrid('endEdit', editIndex);
                            editIndex = undefined;
                            //alert("关闭编辑器");
                        }
                        //$("#dg").datagrid('onClickRow');
                    },

    2.关闭编辑器后触发

              onAfterEdit: function (index, row, changes) { // 关闭编辑器后触发
                        var updated = $(this).datagrid('getChanges', 'updated');  // updated 是一个getChanges的属性,可以查看api
                        //alert("onAfterEdit。。" + updated.length);
                        if (updated.length < 1) {  // 如果编辑器中的数据已经修改,则length为1,否则为0,判断是否已经修改数据
                            editRow = undefined;
                            $(this).datagrid('unselectAll');
                            return;
                        } else {
                            // 传值
                            //alert("提交数据");
                            submitForm(index, row, changes);  //这里ajax提交数据的方法
                        }
                    },

    3.使用ajax提交数据

                function submitForm(index, row, changes) {
                    //alert(row.content + "--" + changes.content);  //daliyResultRate
                    var Econtent = row.content;  // 当前行中修改的数据值
                    if (Econtent == "") {
                        $.messager.alert('提醒', '没有录入数据!');
                        $("#dg").datagrid('reload');
                        return;
                    }
                    //var r = /^-?[1-9]/;//判断输入的是正整数
                    //if (!r.test(resultId)) {
                    //    $.messager.alert('提醒', '请输入正整数!');
                    //    return;
                    //}
                    $.ajax({
                        type: "post",
                        async: false,
                        url: "/T1/Edit",
                        data: {
                            "Econtent": Econtent,  //将数据ajax到后台
                            "id": row.id,
                        },
                        success: function (data) {
                            if (data == "true") {
                                alert("保存成功");
                                $("#dg").datagrid('reload');
                            }
                        }
                    })
                }

     三丶默认选择

     1   //选中事件
     2                 onSelect: function (index, row) {
     3                     dgStaff.datagrid('load', {
     4                         id: row.id,
     5                     });
     6                 },
     7 
     8                 onLoadSuccess: function (data) {
     9                     //修改全选按钮
    10                     $(".datagrid-header-check").html("序号");
    11                     $(".datagrid-header-check").parent().prev().html("");
    12                     $(".datagrid-header-check").attr("style", "79px !important;font-weight: 700;font-size: 14px;line-height:18px;");
    13 
    14                     if (data != "" && data.total > 0) {
    15                         dgDepartment.datagrid("selectRow", 0);
    16                     }
    17 
    18                 },
    19             });
    onSelect

    四丶初始化下拉框

     1                 var demoData = oc.BllSession.ISysDemoBLL.Entities.Select(a => new ComoboData
     2                 {
     3                     value = a.id,
     4                     text = a.departName,
     5                 }).ToList();
     6 
     7                 demoData.Insert(0, new ComoboData
     8                 {
     9                     value = "",
    10                     text = "全部",
    11                 });
    12                 return Json(demoData );    
    View Code

    js

     1            $('#j_departId').combobox({
     2                 editable: false,
     3                 height: 30,
     4                 url: '远程路径/控制器相对路径',
     5                 panelHeight: 'auto',
     6                 panelMaxHeight: 220,
     7                 valueField: 'value',
     8                 textField: 'text',
     9                 onSelect: function (rec) {
    10                     if (rec.value == "") {
    11                         $('#departName').val("");
    12                     } else {
    13                         $('#departName').val(rec.text);
    14                     }
    15                 }
    16             });
    View Code
    作者:chenze
    出处:https://www.cnblogs.com/chenze-Index/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    如果文中有什么错误,欢迎指出。以免更多的人被误导。
  • 相关阅读:
    新概念英语第四册16-30课(转)
    新概念英语第四册01-15课(转)
    通过了解MySpace的六次重构经历,来认识分布式系统到底该如何创建(转载)
    BASE64编码规则及C#实现
    Lucene资料汇总
    SQL Server性能监控
    Fedex接口和测试账户
    css语法
    POI操作Excel常用方法总结 (转)
    java eclipse中的代码联动提示功能
  • 原文地址:https://www.cnblogs.com/chenze-Index/p/9328437.html
Copyright © 2011-2022 走看看