李炎恢 DataGrid(数据表格)组件[5] 添加数据

2024-04-11 19:48

本文主要是介绍李炎恢 DataGrid(数据表格)组件[5] 添加数据,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>DataGrid(数据表格)组件[5] 添加数据</title>
    <script src="~/easyui/jquery.min.js"></script>
    <script src="~/easyui/jquery.easyui.min.js"></script>
    <script src="~/easyui/locale/easyui-lang-zh_CN.js"></script>
    <link href="~/easyui/themes/gray/easyui.css" rel="stylesheet" />
    <link href="~/easyui/themes/icon.css" rel="stylesheet" />
    <style type="text/css">
        /*文本框样式*/
        .textbox {
            height: 20px;  
            margin: 0;
            padding: 0 2px;
            box-sizing: content-box;
        }

    </style>
    <script type="text/javascript">

        //扩展 dateTimeBox
        $.extend($.fn.datagrid.defaults.editors, {
            datetimebox: {
                init: function (container, options) {
                    var input = $('<input type="text">').appendTo(container);
                    options.editable = false;
                    input.datetimebox(options);
                    return input;
                },
                getValue: function (target) {
                    return $(target).datetimebox('getValue');
                },
                setValue: function (target, value) {
                    $(target).datetimebox('setValue', value);
                },
                resize: function (target, width) {
                    $(target).datetimebox('resize', width);
                },
                destroy: function (target) {
                    $(target).datetimebox('destroy');
                },
            }
        });

        $(function () {
            //全局对象
            obj = {
                editRow: false,


                add:function()
                {
                    if (!this.editRow) //没有新编辑行
                    {
                        $('#save,#redo').show();

                        //添加一行
                        $('#box').datagrid("insertRow", {
                            index: 0,
                            row: {

                            },
                        });

                        //将第1行设置为可编辑状态
                        $('#box').datagrid("beginEdit", 0);

                        this.editRow = true;
                    }

                },

 

 

                save: function () {
                    //这两句不应该放这里,应该是保存成功后,再执行
                    //$('#save,#redo').hide();
                    //this.editRow = false;
                    //将第一行设置为结束编辑状态
                    $('#box').datagrid('endEdit', 0);
                },


                redo: function () {
                    $('#save,#redo').hide();
                    this.editRow = false;
                    $('#box').datagrid('rejectChanges'); //回滚
                },

 

 

            };

            $('#box').datagrid({
                width: 800,
                title: '用户列表',
                iconCls: 'icon-search',
                toolbar: '#tb', //工具条
                //url:'Home/a', //数据地址
                striped: true,
                nowrap: true,
                rownumbers: true,
                singleSelect: true,
                fitColumns: true,
                columns: [[
                    {
                        field: 'user',
                        title: '帐号',
                        width: 100,
                        editor: {
                            type: 'validatebox',
                            options: {
                                required:true, //属性
                            }
                        },

                    },
                    {
                        field: 'email',
                        title: '邮件',
                        width: 100,
                        editor: {
                            type: 'validatebox',
                            options: {
                                required: true,
                                validType:'email',
                            }
                        },
                    },
                    {
                        field: 'date',
                        title: '注册时间',
                        editable: false,
                        width: 100,
                        editor: {
                            //type: 'datebox',
                            type: 'datetimebox',
                            options: {
                                required: true,
                            },
                        },
                    },
                ]],
                onAfterEdit: function (rowIndex, rowData, changes) {
                    $('#save,#redo').hide();
                    obj.editRow = false;
                    console.log(rowData); //保存到数据库
                },

            });
        });
    </script>

</head>
<body>
    <table id="box">
    </table>
    <div id="tb" style="padding:5px;height:auto">
        <div style="margin-bottom:5px"> 
            <a href="#" class="easyui-linkbutton" iconcls="icon-add" plain="true" οnclick="obj.add();">添加</a> 
            <a href="#" class="easyui-linkbutton" iconcls="icon-edit" plain="true">修改</a> 
            <a href="#" class="easyui-linkbutton" iconcls="icon-remove" plain="true">删除</a> 
            <a href="#" class="easyui-linkbutton" iconcls="icon-save" plain="true" style="display:none;" id="save" οnclick="obj.save();">保存 </a> 
            <a href="#" class="easyui-linkbutton" iconcls="icon-redo" plain="true" style="display:none;" id="redo" οnclick="obj.redo();">取消编 辑</a>
        </div> 
        
        <div style="padding:0 0 0 7px;">
            查 询 帐 号 : <input class="textbox" name="user" style="width:110px">
            创 建 时 间 从 : <input class="easyui-datebox" name="date_from" editable="false" style="width:110px"> 
            到 : <input class="easyui-datebox" name="date_to" style="width:110px"> 
            <a href="#" class="easyui-linkbutton" iconcls="icon-search" οnclick="obj.search();">查询</a>
        </div>
    </div>
</body>
</html>

这篇关于李炎恢 DataGrid(数据表格)组件[5] 添加数据的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/895018

相关文章

Redis的数据过期策略和数据淘汰策略

《Redis的数据过期策略和数据淘汰策略》本文主要介绍了Redis的数据过期策略和数据淘汰策略,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录一、数据过期策略1、惰性删除2、定期删除二、数据淘汰策略1、数据淘汰策略概念2、8种数据淘汰策略

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

Python给Excel写入数据的四种方法小结

《Python给Excel写入数据的四种方法小结》本文主要介绍了Python给Excel写入数据的四种方法小结,包含openpyxl库、xlsxwriter库、pandas库和win32com库,具有... 目录1. 使用 openpyxl 库2. 使用 xlsxwriter 库3. 使用 pandas 库

SpringBoot定制JSON响应数据的实现

《SpringBoot定制JSON响应数据的实现》本文主要介绍了SpringBoot定制JSON响应数据的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录前言一、如何使用@jsonView这个注解?二、应用场景三、实战案例注解方式编程方式总结 前言

使用Python在Excel中创建和取消数据分组

《使用Python在Excel中创建和取消数据分组》Excel中的分组是一种通过添加层级结构将相邻行或列组织在一起的功能,当分组完成后,用户可以通过折叠或展开数据组来简化数据视图,这篇博客将介绍如何使... 目录引言使用工具python在Excel中创建行和列分组Python在Excel中创建嵌套分组Pyt

在Rust中要用Struct和Enum组织数据的原因解析

《在Rust中要用Struct和Enum组织数据的原因解析》在Rust中,Struct和Enum是组织数据的核心工具,Struct用于将相关字段封装为单一实体,便于管理和扩展,Enum用于明确定义所有... 目录为什么在Rust中要用Struct和Enum组织数据?一、使用struct组织数据:将相关字段绑

在Mysql环境下对数据进行增删改查的操作方法

《在Mysql环境下对数据进行增删改查的操作方法》本文介绍了在MySQL环境下对数据进行增删改查的基本操作,包括插入数据、修改数据、删除数据、数据查询(基本查询、连接查询、聚合函数查询、子查询)等,并... 目录一、插入数据:二、修改数据:三、删除数据:1、delete from 表名;2、truncate

如何利用Python实现给Excel表格截图

《如何利用Python实现给Excel表格截图》这篇文章主要为大家详细介绍了如何利用Python实现给Excel表格截图功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 我搜索了网络上的方案,感觉把 Excel 表格转换为 html 再用 platwright 截图是比China编程较顺

Java实现Elasticsearch查询当前索引全部数据的完整代码

《Java实现Elasticsearch查询当前索引全部数据的完整代码》:本文主要介绍如何在Java中实现查询Elasticsearch索引中指定条件下的全部数据,通过设置滚动查询参数(scrol... 目录需求背景通常情况Java 实现查询 Elasticsearch 全部数据写在最后需求背景通常情况下

vue基于ElementUI动态设置表格高度的3种方法

《vue基于ElementUI动态设置表格高度的3种方法》ElementUI+vue动态设置表格高度的几种方法,抛砖引玉,还有其它方法动态设置表格高度,大家可以开动脑筋... 方法一、css + js的形式这个方法需要在表格外层设置一个div,原理是将表格的高度设置成外层div的高度,所以外层的div需要