jqgrid+bootstrap样式实践

摘要:
Jqgrid+引导风格练习、错误数据加载、选择、删除等功能需要引入引导风格。最小cssui。jqgrid。css JSjquery。最小jsjquery。jqGrid。最小jshtml代码:[html]viewplatecopy˂tableid=“jqGridLi

jqgrid+bootstrap样式实践,报错数据加载,选中,删除等功能

需要引入的样式

bootstrap.min.css

ui.jqgrid.css

需要引入的JS

jquery.min.js

bootstrap.min.js
jquery.jqGrid.min.js

html代码:

[html] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. <div class="jqGrid_wrapper">  
  2.     <table id="jqGridList"></table>  
  3.     <div id="jqGridPager"></div>  
  4. </div>  



jqgrid初始化

[javascript] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. var jqGrid = $("#jqGridList");  
  2.         jqGrid.jqGrid({  
  3.             caption: "用户管理",  
  4.             url: "/User/GetList",  
  5.             mtype: "GET",  
  6.             styleUI: 'Bootstrap',//设置jqgrid的全局样式为bootstrap样式  
  7.             datatype: "json",  
  8.             colNames: ['主键', '登录帐号', '姓名','性别', '邮箱', '电话', '身份证'],  
  9.             colModel: [  
  10.                 { name: 'Id', index: 'Id',  60, key: true, hidden: true },  
  11.                 { name: 'Code', index: 'Code',  60 },  
  12.                 { name: 'Name', index: 'Name',  60 },  
  13.                 {  
  14.                     name: 'Gender', index: 'Gender',  60,  
  15.                     formatter: function(cellValue, options, rowObject) {  
  16.                         return cellValue == 0 ? "男" : "女";  
  17.                     }//jqgrid自定义格式化  
  18.                 },  
  19.                 { name: 'Email', index: 'Email',  60 },  
  20.                 { name: 'Phone', index: 'Phone',  60 },  
  21.                 { name: 'IdCard', index: 'IdCard',  60 }  
  22.             ],  
  23.             viewrecords: true,  
  24.             multiselect: true,  
  25.             rownumbers: true,  
  26.             auto true,  
  27.             height: "100%",  
  28.             rowNum: 20,  
  29.             rownumbers: true, // 显示行号  
  30.             rownumWidth: 35, // the width of the row numbers columns  
  31.             pager: "#jqGridPager",//分页控件的id  
  32.             subGrid: false//是否启用子表格  
  33.         });  
  34.   
  35.         // 设置jqgrid的宽度  
  36.         $(window).bind('resize', function () {  
  37.             var width = $('.jqGrid_wrapper').width();  
  38.             jqGrid.setGridWidth(width);  
  39.         });  

其它jqgrid函数:

获取jqgrid选中的数据行:

[javascript] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. var id = $('#jqGridList').jqGrid('getGridParam', 'selrow');  
  2. if (id)  
  3.     return $('#jqGridList').jqGrid("getRowData", id);  
  4. else  
  5.     return null;  


获取jqgrid的所有选中的数据

[javascript] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. var grid = $('#jqGridList');  
  2. var rowKey = grid.getGridParam("selrow");  
  3.   
  4. if (rowKey) {  
  5.     var selectedIDs = grid.getGridParam("selarrrow");  
  6.     for (var i = 0; i < selectedIDs.length; i++) {  
  7.         console.log(selectedIDs[i]);  
  8.     }  
  9. }  



最终的效果图:

jqgrid+bootstrap样式实践第9张

另附上后台控制器代码,又需要的可以看看

[csharp] view plain copy
 
 在CODE上查看代码片派生到我的代码片
    1. /******************************************************************************* 
    2. * Copyright (C) JuCheap.Com 
    3. *  
    4. * Author: dj.wong 
    5. * Create Date: 2015/8/7 15:02:43 
    6. * Description: Automated building by service@aspxpet.com  
    7. *  
    8. * Revision History: 
    9. * Date         Author               Description 
    10. *********************************************************************************/  
    11.   
    12. using EP.Component.Tools;  
    13. using EP.Site.Models;  
    14. using System;  
    15. using System.Linq;  
    16. using System.Collections.Generic;  
    17. using System.ComponentModel.Composition;  
    18. using System.Web.Mvc;  
    19. using System.Linq.Expressions;  
    20.   
    21. namespace EP.Site.Web.Areas.Adm.Controllers  
    22. {  
    23.     /// <summary>  
    24.     /// 用户管理  
    25.     /// </summary>  
    26.     [Export]  
    27.     public class UserController : BaseController  
    28.     {  
    29.         [Import]  
    30.         public IAccountSiteContract AccountService { get; set; }  
    31.   
    32.         [Import]  
    33.         public ISys_UserSiteContract UserService { get; set; }  
    34.   
    35.         [Import]  
    36.         public ISys_ParameterSiteContract ParamService { get; set; }  
    37.   
    38.         // GET: Adm/User  
    39.         public ActionResult Index()  
    40.         {  
    41.             return View();  
    42.         }  
    43.   
    44.         // GET: Adm/User/Add  
    45.         public ActionResult Add()  
    46.         {  
    47.   
    48.             return View();  
    49.         }  
    50.   
    51.         // GET: Adm/User/Edit  
    52.         public ActionResult Edit(int id)  
    53.         {  
    54.             var model = UserService.GetByKeyId(id);  
    55.   
    56.             return View(model);  
    57.         }  
    58.   
    59.         /// <summary>  
    60.         /// 分页获取  
    61.         /// </summary>  
    62.         /// <param name="query"></param>  
    63.         /// <returns></returns>  
    64.         [HttpGet]  
    65.         public JsonResult GetList(QueryBase query)  
    66.         {  
    67.             try  
    68.             {  
    69.                 Expression<Func<Sys_UserDto, bool>> exp = item => !item.IsDeleted && !item.IsUser;  
    70.                 if (!query.SearchKey.IsBlank())  
    71.                     exp = exp.And(item => item.Name.Contains(query.SearchKey) || item.Code.Contains(query.SearchKey));  
    72.                 ResultDto<Sys_UserDto> dto = UserService.GetPages(query, exp, item => item.Id);  
    73.                 return Json(dto, JsonRequestBehavior.AllowGet);  
    74.             }  
    75.             catch (Exception ex)  
    76.             {  
    77.                 Log(ex);  
    78.                 return Json(new ResultDto<Sys_UserDto>(), JsonRequestBehavior.AllowGet);  
    79.             }  
    80.         }  
    81.   
    82.         /// <summary>  
    83.         /// 添加  
    84.         /// </summary>  
    85.         /// <param name="model"></param>  
    86.         /// <returns></returns>  
    87.         [HttpPost]  
    88.         public JsonResult AddModel(Sys_UserDto model)  
    89.         {  
    90.             var result = new Result<string>();  
    91.             try  
    92.             {  
    93.                 if (model == null)  
    94.                     throw new ArgumentException("参数错误");  
    95.                 bool flag = AccountService.Insert(model);  
    96.   
    97.                 if (result.flag)  
    98.                 {  
    99.                     ActionLog("Sys_User", model, ActionType.Insert, CurrentUser);  
    100.                 }  
    101.   
    102.                 result.flag = flag;  
    103.             }  
    104.             catch (Exception ex)  
    105.             {  
    106.                 Log(ex);  
    107.                 result.msg = ex.Message;  
    108.             }  
    109.             return Json(result, JsonRequestBehavior.AllowGet);  
    110.         }  
    111.   
    112.         /// <summary>  
    113.         /// 编辑  
    114.         /// </summary>  
    115.         /// <param name="model"></param>  
    116.         /// <returns></returns>  
    117.         [HttpPost]  
    118.         public JsonResult EditModel(Sys_UserDto model)  
    119.         {  
    120.             var result = new Result<string>();  
    121.             try  
    122.             {  
    123.                 if (model == null)  
    124.                     throw new ArgumentException("参数错误");  
    125.   
    126.                 bool flag = AccountService.Edit(model);  
    127.                 if (result.flag)  
    128.                 {  
    129.                     ActionLog("Sys_User", model, ActionType.Update, CurrentUser);  
    130.                 }  
    131.   
    132.                 result.flag = flag;  
    133.             }  
    134.             catch (Exception ex)  
    135.             {  
    136.                 Log(ex);  
    137.                 result.msg = ex.Message;  
    138.             }  
    139.             return Json(result, JsonRequestBehavior.AllowGet);  
    140.         }  
    141.     }  
    142. }  

免责声明:文章转载自《jqgrid+bootstrap样式实践》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇窗体中调用主窗体的方法和控件ES6中的export以及import的使用多样性下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

jqGrid 常用 总结 -1

这篇文章是因为,我们在做的后台项目,里面有大量的表格统计,这个不可能自己手写,所以其中的表格使用的是jqgrid。 这个插件其实使用起来还是不错的,里面有很多的功能很赞。这篇博客就是自己的的一个记录,也是对以后项目的一个参考。因为有一些代码总是记不住。 首先就是引入这个插件所需要的js和css了,这个相信大家都不陌生,这个插件是基于jq的所以之前要引入jq...

Jqgrid获取行id

//获取选中行(单行)的ID var id = $("#table").jqGrid('getGridParam','selrow'); //根据id获取行数据,返回的是列表 var rowDatas = $("#table").jqGrid('getRowData', id);...

jqgrid 属性说明

1.0 colModel :   要呈现字段的属性设置 1.1 align:定义数据相对单元格的对齐方式.string  left 1.2 datefmt: 日期格式,     string  Y-m-d 1.3 editable: 定义字段是否可编辑 boolean  false 1.4 defval : 搜索字段的默认值,(只用于自定义搜索) stri...

jqGrid中multiselect: true 操作checkbox

在jqGrid中设置multiselect: true可以实现全选的操作,但怎么设置被选中的checkbox里面的值呢,做法如下:jQuery("#listTable").jqGrid({   url: 'queryList.do',   datatype: 'json',   colNames: ['','编号','姓名'],   colModel: [...

jqgrid 行内修改单元格内容

由于字段较多,但可供用户修改的 字段仅有一个,所有不想通过弹出对话框的方式让用户进行修改。还好jqgrid支持行内数据修改,首先要将cellEdit设为true以支持对单元格的 修改操作。这里讲cellsubmit设为clientArray,当修改完成后并不直接发送到服务器进行保存,而是先保存在table中,当用户点击保 存按钮是才向数据库发送请求更新数据...

jqgrid 事件说明

Events(事件) 事件响应动作被设置为表格的属性,以下定义了行被选中时的响应: var lastSel; jQuery("#gridid").jqGrid({ ...    onSelectRow: function(id){       if(id && id!==lastSel){          jQuery('#gridid'...