使用EasyUI-datagrid进行数据展示:进行添加,修改,删除操作逻辑代码,数据源来自MongoDB.

一.新建SiteInfo控制器,添加Index页面:http://www.cnblogs.com/heyangyi/p/5703904.html

 @{
     Layout = null;
 }

 <!DOCTYPE html>

 <html>
 <head>
     <meta name="viewport" content="width=device-width" />
     <title>Index</title>
     <script src="~/Content/Scripts/jquery-1.10.2.js"></script>
 </head>
 <body>
     @*展示区域*@
     <div style="margin-left:4px;">
         <table id="dg_Siteinfo" title="站点管理" class="easyui-datagrid"
                url="SiteInfo/DataSiteInfo"
                toolbar="#toolbar_Siteinfo"
                pagination="true"
                idfield="_id"
                rownumbers="true"
                fitcolumns="true"
                singleselect="fales">
             <thead>
                 <tr>
                     <th field="ck" checkbox="true"></th>
                     <th field=">站点ID</th>
                     <th field=">站点名称</th>
                     <th field=">站点域名</th>
                     <th field=">站点描述</th>
                     <th field=">添加时间</th>
                 </tr>
             </thead>
         </table>
         <div id="toolbar_Siteinfo">
             <a href="javascript:void(0)" class="easyui-linkbutton" iconcls="icon-add" plain="true" onclick="newUser()">添加站点</a>
             <a href="javascript:void(0)" class="easyui-linkbutton" iconcls="icon-edit" plain="true" onclick="editUser()">编辑站点</a>
             <a href="javascript:void(0)" class="easyui-linkbutton" iconcls="icon-remove" plain="true" onclick="destroyUser()">删除站点</a>
         </div>
     </div>

     @*添加面板*@
     <div id="dlg_Siteinfo" class="easyui-dialog" style="width:400px;height:280px;padding:10px 20px" closed="true" buttons="#dlg-buttons">
         <div class="ftitle">Site Information</div>
         <form id="fm_Siteinfo" method="post">
             <div class="fitem">
                 <label>站点名称:</label>
                 <input name="SiteNam" class="easyui-textbox" required="true">
             </div>
             <div class="fitem">
                 <label>站点域名:</label>
                 <input name="SiteDomainName" class="easyui-textbox" required="true">
             </div>
             <div class="fitem">
                 <label>站点描述:</label>
                 <input name="SiteDescription" class="easyui-textbox">
             </div>
         </form>
     </div>

     <div id="dlg-buttons">
         <a href="javascript:void(0)" class="easyui-linkbutton c6" iconcls="icon-ok" onclick="saveUser()" style="width:90px">Save</a>
         <a href="javascript:void(0)" class="easyui-linkbutton" iconcls="icon-cancel" onclick="javascript: $('#dlg_Siteinfo').dialog('close')" style="width:90px">Cancel</a>
     </div>

     <script type="text/javascript">
         var url;
         function newUser() {
             $('#dlg_Siteinfo').dialog('open').dialog('center').dialog('setTitle', '添加站点');
             $('#fm_Siteinfo').form('clear');
             url = 'SiteInfo/Insert';//添加地址
         }
         function editUser() {
             var row = $('#dg_Siteinfo').datagrid('getSelected'); //编辑ID
             if (row) {
                 $('#dlg_Siteinfo').dialog('open').dialog('center').dialog('setTitle', '编辑站点'); //
                 $('#fm_Siteinfo').form('load', row);   //将选中行的数据填充进去
                 url = 'SiteInfo/Update?_id=' + row._id; //编辑地址
             } else {
                 topCenter()
             }
         }
         function saveUser() {
             $('#fm_Siteinfo').form('submit', {
                 url: url,
                 onSubmit: function () {
                     return $(this).form('validate');
                 },
                 success: function (result) {
                     var result = eval('(' + result + ')');
                     //alert(result);
                     if (result.success) {
                         topCenter(result.msg, );
                         $('#dlg_Siteinfo').dialog('close');           // close the dialog
                         $('#dg_Siteinfo').datagrid('reload');         // reload the user dat
                     } else {
                         topCenter(result.msg, );
                     }
                 }
             });
         }
         function destroyUser() {
             var ids = [];
             var rows = $('#dg_Siteinfo').datagrid('getSelections');
             ) {
                 $.messager.confirm('提示', '确定删除选中这些数据吗?', function (r) {
                     if (r) {
                         ; i < rows.length; i++) {
                             ids.push(rows[i]._id);
                         }
                        // alert(ids.join(','));
                         $.ajax({
                             url: "SiteInfo/Delete",
                             type: "post",
                             data: {
                                 _ids: ids.join(',')
                             },
                             success: function (result) {
                                 if (result.success) {
                                     topCenter(result.msg, );
                                     $('#dg_Siteinfo').datagrid('reload');           // reload the user dat
                                     $('#dg_Siteinfo').datagrid('clearSelections');  //取消选择行
                                 } else {
                                     topCenter(result.msg, );
                                 }
                             }
                         });
                     }
                 });
             } ) };
         }
     </script>
 </body>
 </html>

新增以下类:使用MongoDB进行数据存储,MongoDB.NET 操作参考:

    public interface IDateFactory
    {
        object GetInsert(RequestContext request);

        object GetSelect(RequestContext request);

        object GetUpdate(RequestContext request);

        object GetDelete(RequestContext request);
    }
    public class MongoLink
    {
        public MongoDbHelper mh { get; set; }

        public MongoLink()
        {
            try
            {
                string MongoDBHost= ConfigurationManager.AppSettings["MongoDBHost"];//MongoDB所在IP地址
                string MongoDBPort=ConfigurationManager.AppSettings["MongoDBPort"]; //MongoDB端口
                string MongoDBTimeOut=ConfigurationManager.AppSettings["MongoDBTimeOut"];//请求超时时间
                mh = new MongoDbHelper(MongoDBHost, MongoDBPort, MongoDBTimeOut);
            }
            catch (Exception ex)
            {
                mh = ");
            }
        }
    }
    public class Site :MongoLink, IDateFactory
    {
        public Site() : base() { }

        public object GetInsert(RequestContext request)
        {
            var Request = request.HttpContext.Request;
            try
            {
                string SiteNam = Request["SiteNam"];
                string SiteDomainName = Request["SiteDomainName"];
                string SiteDescription = Request["SiteDescription"];
                DateTime dt = DateTime.Now.ToLocalTime();
                bool result= this.mh.Insert<tbSite>(new tbSite() {
                    _id = Guid.NewGuid().ToString(),
                    CreateTime = dt ,
                    CreateUserID="a",
                    SiteDescription = SiteDescription,
                    SiteDomainName = SiteDomainName,
                    SiteNam=SiteNam,
                    State=,
                    UpdateID="a",
                    UpdateTime=dt
                });
                if(result)
                    return new { success = true, msg = "添加成功" };
                else
                    return new { success = false, msg = "添加失败" };
            }
            catch (Exception ex)
            {
                return new { success = false, msg = "系统异常" };
            }
        }

        public object GetSelect(RequestContext request)
        {
            var Request = request.HttpContext.Request;
            try
            {
                var order = Request["order"];
                var page = Request["page"];
                var rows = Request["rows"];
                var sort = Request["sort"];
                "; } //1升序 -1降序
                if (sort == null) { sort = "CreateTime"; }
                ), int.Parse(page), int.Parse(rows), new SortByDocument(sort, int.Parse(order)))
                    .Select(x => new
                    {
                        SiteNam = x.SiteNam,
                        SiteDomainName = x.SiteDomainName,
                        SiteDescription = x.SiteDescription,
                        _id = x._id,
                        CreateTime = x.CreateTime.ToString("yyyy-MM-dd HH:mm:ss")
                    });
                ));
                var obj = new { total = total, rows = SiteList };
                return obj;
            }
            catch (Exception ex)
            {
                return null;
            }
        }

        public object GetUpdate(RequestContext request)
        {
            var Request = request.HttpContext.Request;
            try
            {
                string _id = Request.QueryString["_id"];
                string SiteNam = Request["SiteNam"];
                string SiteDomainName = Request["SiteDomainName"];
                string SiteDescription = Request["SiteDescription"];
                DateTime dt = DateTime.Now.ToLocalTime();
                bool result = this.mh.Update<tbSite>(Query.EQ("_id", _id),
                    Update.Set("SiteNam", SiteNam).
                    Set("SiteDomainName", SiteDomainName).
                    Set("SiteDescription", SiteDescription).
                    Set("CreateUserID", "b").
                    Set("UpdateTime", dt)
                    , "tbSite");
                if (result)
                    return new { success = true, msg = "修改成功" };
                else
                    return new { success = false, msg = "修改失败" };
            }
            catch (Exception ex)
            {
                return new { success = false, msg = "系统异常" };
            }
        }

        public object GetDelete(RequestContext request)
        {
            var Request = request.HttpContext.Request;
            try
            {
                string[] _ids = Request["_ids"].Split(',');
                ; i < _ids.Length; i++)
                {
                    ), "tbSite");
                }
                 return new { success = true, msg = "删除成功" };
            }
            catch (Exception ex)
            {
                return new { success = false, msg = "删除失败" };
            }
        }
    }

二.添加效果:

三.修改效果:

 

四.删除效果

五.使用MongoSVG工具查看数据:

EasyUI-datagrid数据展示+MongoDB数据操作的更多相关文章

  1. Jquery easyUI datagrid载入复杂JSON数据方法

    1.JSON数据为: {     "total":28, "rows": [     {       "itemNo": "1&q ...

  2. easyui datagrid 异步加载数据时滚动条有时会自动滚到最底部的问题

    在使用easyui 的datagrid异步加载数据时发现滚动条有时会自动滚到最底部.经测试发现,如果加载数据前没有选中行则不会出现这个问题.这样我们可以在重新异步加载数据前取消选中行就可以避免这个问题 ...

  3. jquery easyui datagrid 远程加载数据----javascript法

    jquery easyui有三种办法生成datagrid(数据网格),本篇专门讨论javascript借助jquey easy ui实现的方式 html部分 <main role="m ...

  4. easyui datagrid行编辑中数据联动

    easyui的datagrid中行内编辑使用数据联动.即:当编辑产品编号时,该行的产品名称自动根据产品编号显示出来. 在编辑中获取当前行的索引 function getRowIndex(target) ...

  5. easyui datagrid 动态加载数据 渲染问题,表格错位问题

    $('#dg').datagrid({ url:'datagrid_data.json', columns:[[ {field:'code',title:'Code',width:100}, {fie ...

  6. jquery easyui datagrid 远程加载数据----把主键渲染为值遇到的问题及解决方案

    起因:数据库中一些字段存的是代表具体值的数字,需要渲染为具体值 monggodb中的字典 mysql中存放的值为:expertin代表教练擅长的搏击技能 jquery easyui中的相关代码如下:用 ...

  7. easyui datagrid 后台返回所有数据,前台分页

    function pagerFilter(data) { if (typeof data.length == 'number' && typeof data.splice == 'fu ...

  8. Easyui datagrid 绑定本地Json数据

    var jsonstr = '{"total":1,"rows":[{"id":"M000005","name ...

  9. Java电商项目-6.实现门户首页数据展示_Redis数据缓存

    目录 项目的Github地址 需求介绍 搭建Redis集群环境 下面先描述单机版redis的安装 下面将进行Redis3主3从集群环境搭建 基于SOA架构, 创建门户ashop-portal-web门 ...

随机推荐

  1. 《机器学习实战》 code debug

    摘要:最近在看<机器学习实战>,在code的过程中总是会报一些小错误,所以发下debug过的地方:由于是跳着看的,所以只是其中一部分,希望之后能把这本书我遇见的全部错误都在此更正下. 内容 ...

  2. 360路由器c301最新固件支持万能中继

    360路由器c301现在已经停产了.出厂的固件是360_301_0.7.3.8.这个版本不支持中继.5G信号.本文主要介绍如何刷最新固件以及设置万能中继. 本文为作者原创,发表在博客园:http:// ...

  3. CooMark网页颜色取色表

    CooMark网页颜色取色表 艾利斯兰 - #F0F8FF - aliceblue 古董白 - #FAEBD7 - antiquewhite 浅绿色 - #00FFFF - aqua 碧绿色 - #7 ...

  4. 理论经典:TCP协议的3次握手与4次挥手过程详解

    1.前言 尽管TCP和UDP都使用相同的网络层(IP),TCP却向应用层提供与UDP完全不同的服务.TCP提供一种面向连接的.可靠的字节流服务. 面向连接意味着两个使用TCP的应用(通常是一个客户和一 ...

  5. struts2 OGNL表达式

    一.OGNL OGNL是Object-Graph Navigation Language的缩写,全称为对象图导航语言,是一种功能强大的表达式语言,它通过简单一致的语法,可以任意存取对象的属性或者调用对 ...

  6. poj 3321 Apple Trie

    /* poj 3321 Apple Trie 这道题的关键是如何将一个树建成一个一维数组利用树状数组来解题! 可以利用dfs()来搞定,我们在对一个节点深搜后,所经过的节点的数目就是该节点的子树的数目 ...

  7. List和Dictionary泛型类查找效率浅析

    List和Dictionary泛型类查找效率存在巨大差异,前段时间亲历了一次.事情的背景是开发一个匹配程序,将书籍(BookID)推荐给网友(UserID),生成今日推荐数据时,有条规则是同一书籍七日 ...

  8. C#对称加密(AES加密)每次生成的密文结果不同思路代码分享

    思路:使用随机向量,把随机向量放入密文中,每次解密时从密文中截取前16位,其实就是我们之前加密的随机向量. 代码 public static string Encrypt(string plainTe ...

  9. Sybase数据库收集表及其索引的统计信息

    更新表及其索引的统计信息: update table statistics 表名 go update index statistics 表名 go 建议此操作在闲时操作.

  10. Hadoop阅读笔记(六)——洞悉Hadoop序列化机制Writable

    酒,是个好东西,前提要适量.今天参加了公司的年会,主题就是吃.喝.吹,除了那些天生话唠外,大部分人需要加点酒来作催化剂,让一个平时沉默寡言的码农也能成为一个喷子!在大家推杯换盏之际,难免一些画面浮现脑 ...