ylbtech-Code-NFine:jqgrid 数据绑定
1. jqgrid 基本列展示返回顶部
1、

1.1、.cshtml

$(function () {
gridList();
})
function gridList() {
var $gridList = $("#gridList");
$gridList.dataGrid({
url: "/SystemManage/Duty/GetGridJson",
height: $(window).height() - 96,
colModel: [
{ label: "主键", name: "F_Id", hidden: true, key: true },
{ label: '岗位名称', name: 'F_FullName', width: 150, align: 'left' },
{ label: '岗位编号', name: 'F_EnCode', width: 150, align: 'left' },
{
label: '归属机构', name: 'F_OrganizeId', width: 150, align: 'left',
formatter: function (cellvalue, options, rowObject) {
return top.clients.organize[cellvalue] == null ? "" : top.clients.organize[cellvalue].fullname;
}
},
{
label: '创建时间', name: 'F_CreatorTime', width: 80, align: 'left',
formatter: "date", formatoptions: { srcformat: 'Y-m-d', newformat: 'Y-m-d' }
},
{
label: "有效", name: "F_EnabledMark", width: 60, align: "center",
formatter: function (cellvalue) {
return cellvalue == 1 ? "<i class=\"fa fa-toggle-on\"></i>" : "<i class=\"fa fa-toggle-off\"></i>";
}
},
{ label: '备注', name: 'F_Description', width: 300, align: 'left' }
]
});
$("#btn_search").click(function () {
$gridList.jqGrid('setGridParam', {
postData: { keyword: $("#txt_keyword").val() },
}).trigger('reloadGrid');
});
}

1.1.2、

<div class="gridPanel">
<table id="gridList"></table>
</div>

1.2、.cs

[HttpGet]
[HandlerAjaxOnly]
public ActionResult GetGridJson(string keyword)
{
var data = dutyApp.GetList(keyword);
return Content(data.ToJson());
}
2、
2. jqgrid 基本列展示+分页返回顶部
1、
1.1、.cshtml
1.1.1、pager: "#gridPager"
1.2、 viewrecords: true
1.2、
$(function () {
gridList();
})
function gridList() {
var $gridList = $("#gridList");
$gridList.dataGrid({
url: "/SystemManage/User/GetGridJson",
height: $(window).height() - 128,
colModel: [
{ label: '主键', name: 'F_Id', hidden: true },
{ label: '账户', name: 'F_Account', width: 80, align: 'left' },
{ label: '姓名', name: 'F_RealName', width: 80, align: 'left' },
{
label: '性别', name: 'F_Gender', width: 60, align: 'center',
formatter: function (cellvalue, options, rowObject) {
if (cellvalue == true) {
return '男';
} else {
return '女';
}
}
},
{ label: '手机', name: 'F_MobilePhone', width: 100, align: 'left' },
{
label: '公司', name: 'F_OrganizeId', width: 150, align: 'left',
formatter: function (cellvalue, options, rowObject) {
return top.clients.organize[cellvalue] == null ? "" : top.clients.organize[cellvalue].fullname;
}
},
{
label: '部门', name: 'F_DepartmentId', width: 80, align: 'left',
formatter: function (cellvalue, options, rowObject) {
return top.clients.organize[cellvalue] == null ? "" : top.clients.organize[cellvalue].fullname;
}
},
{
label: '岗位', name: 'F_DutyId', width: 80, align: 'left',
formatter: function (cellvalue, options, rowObject) {
return top.clients.duty[cellvalue] == null ? "" : top.clients.duty[cellvalue].fullname;
}
},
{
label: '创建时间', name: 'F_CreatorTime', width: 80, align: 'left',
formatter: "date", formatoptions: { srcformat: 'Y-m-d', newformat: 'Y-m-d' }
},
{
label: "允许登录", name: "F_EnabledMark", width: 60, align: "center",
formatter: function (cellvalue, options, rowObject) {
if (cellvalue == 1) {
return '<span class=\"label label-success\">正常</span>';
} else if (cellvalue == 0) {
return '<span class=\"label label-default\">禁用</span>';
}
}
},
{ label: '备注', name: 'F_Description', width: 200, align: 'left' }
],
pager: "#gridPager",
sortname: 'F_DepartmentId asc,F_CreatorTime desc',
viewrecords: false
});
$("#btn_search").click(function () {
$gridList.jqGrid('setGridParam', {
postData: { keyword: $("#txt_keyword").val() },
}).trigger('reloadGrid');
});
}
1.1.2、
<div class="gridPanel">
<table id="gridList"></table>
<div id="gridPager"></div>
</div>

1.2、.cs

        [HttpGet]
[HandlerAjaxOnly]
public ActionResult GetGridJson(Pagination pagination, string keyword)
{
var data = new
{
rows = userApp.GetList(pagination, keyword),
total = pagination.total,
page = pagination.page,
records = pagination.records
};
2、
3. jqgird 基本展示+gridTree返回顶部
1、
1.1、treeGrid: true,treeGridModel: "adjacency"
1.1、 .cshtml
$(function () {
gridList();
})
function gridList() {
var $gridList = $("#gridList");
$gridList.dataGrid({
treeGrid: true,
treeGridModel: "adjacency",
ExpandColumn: "F_EnCode",
url: "/SystemManage/Organize/GetTreeGridJson",
height: $(window).height() - 96,
colModel: [
{ label: "主键", name: "F_Id", hidden: true, key: true },
{ label: '名称', name: 'F_FullName', width: 200, align: 'left' },
{ label: '编号', name: 'F_EnCode', width: 150, align: 'left' },
{
label: '分类', name: 'F_CategoryId', width: 80, align: 'left',
formatter: function (cellvalue) {
if (cellvalue == "Group") {
return "集团";
} else if (cellvalue == "Company") {
return "公司";
} else if (cellvalue == "Department") {
return "部门";
} else if (cellvalue == "WorkGroup") {
return "小组";
}
}
},
{
label: '创建时间', name: 'F_CreatorTime', width: 80, align: 'left',
formatter: "date", formatoptions: { srcformat: 'Y-m-d', newformat: 'Y-m-d' }
},
{
label: "有效", name: "F_EnabledMark", width: 60, align: "center",
formatter: function (cellvalue) {
return cellvalue == 1 ? "<i class=\"fa fa-toggle-on\"></i>" : "<i class=\"fa fa-toggle-off\"></i>";
}
},
{ label: '备注', name: 'F_Description', width: 300, align: 'left' }
]
});
$("#btn_search").click(function () {
$gridList.jqGrid('setGridParam', {
postData: { keyword: $("#txt_keyword").val() },
}).trigger('reloadGrid');
});
}

1.1.2、

<div class="gridPanel">
<table id="gridList"></table>
</div>

1.2、.cs

        [HttpGet]
[HandlerAjaxOnly]
public ActionResult GetTreeGridJson(string keyword)
{
var data = organizeApp.GetList();
if (!string.IsNullOrEmpty(keyword))
{
data = data.TreeWhere(t => t.F_FullName.Contains(keyword));
}
var treeList = new List<TreeGridModel>();
foreach (OrganizeEntity item in data)
{
TreeGridModel treeModel = new TreeGridModel();
bool hasChildren = data.Count(t => t.F_ParentId == item.F_Id) == ? false : true;
treeModel.id = item.F_Id;
treeModel.isLeaf = hasChildren;
treeModel.parentId = item.F_ParentId;
treeModel.expanded = hasChildren;
treeModel.entityJson = item.ToJson();
treeList.Add(treeModel);
}
return Content(treeList.TreeGridJson());
}
2、
4. 组合条件查询返回顶部
1、

1.1、 .cshtml

$(function () {
gridList();
})
function gridList() {
var $gridList = $("#gridList");
$gridList.dataGrid({
url: "/SystemSecurity/DbBackup/GetGridJson",
height: $(window).height() - 96,
colModel: [
{ label: "主键", name: "F_Id", hidden: true, key: true },
{ label: '数据库名', name: 'F_DbName', width: 100, align: 'left' },
{ label: '备份名称', name: 'F_FileName', width: 200, align: 'left' },
{ label: '大小', name: 'F_FileSize', width: 100, align: 'left' },
{
label: '备份模式', name: 'F_BackupType', width: 100, align: 'left',
formatter: function (cellvalue) {
if (cellvalue == "1") {
return "完整备份";
} else if (cellvalue == "2") {
return "差异备份";
}
}
},
{
label: '备份时间', name: 'F_CreatorTime', width: 100, align: 'left',
formatter: "date", formatoptions: { srcformat: 'Y-m-d H:i', newformat: 'Y-m-d H:i' }
},
{ label: '备份人员', name: 'F_CreatorUserId', width: 100, align: 'left' },
{ label: '备份说明', name: 'F_Description', width: 300, align: 'left' }
]
});
$("#txt_condition .dropdown-menu li").click(function () {
var text = $(this).find('a').html();
var value = $(this).find('a').attr('data-value');
$("#txt_condition .dropdown-text").html(text).attr('data-value', value)
});
$("#btn_search").click(function () {
var queryJson = {
condition: $("#txt_condition").find('.dropdown-text').attr('data-value'),
keyword: $("#txt_keyword").val()
}
$gridList.jqGrid('setGridParam', {
postData: { queryJson: JSON.stringify(queryJson) },
}).trigger('reloadGrid');
});
}

1.1.2

<div id="txt_condition" class="btn-group">
<a class="btn btn-default dropdown-text" data-toggle="dropdown">选择条件</a>
<a class="btn btn-default dropdown-toggle" data-toggle="dropdown"><span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="javascript:void()" data-value="DbName">数据库名</a></li>
<li><a href="javascript:void()" data-value="FileName">备份名称</a></li>
</ul>
</div>
1.2、 .cs
        [HttpGet]
[HandlerAjaxOnly]
public ActionResult GetGridJson(string queryJson)
{
var data = dbBackupApp.GetList(queryJson);
return Content(data.ToJson());
}
2、
5. jqgrid 级联查询返回顶部
1、
1.1、.cshtml
1.1.1、
$(function () {
$('#layout').layout();
treeView();
gridList();
});
function treeView() {
$("#itemTree").treeview({
url: "/SystemManage/ItemsType/GetTreeJson",
onnodeclick: function (item) {
$("#txt_keyword").val('');
$('#btn_search').trigger("click");
}
});
}
function gridList() {
var $gridList = $("#gridList");
$gridList.dataGrid({
height: $(window).height() - 96,
colModel: [
{ label: "主键", name: "F_Id", hidden: true, key: true },
{ label: '名称', name: 'F_ItemName', width: 150, align: 'left' },
{ label: '编号', name: 'F_ItemCode', width: 150, align: 'left' },
{ label: '排序', name: 'F_SortCode', width: 80, align: 'center' },
{
label: "默认", name: "F_IsDefault", width: 60, align: "center",
formatter: function (cellvalue) {
return cellvalue == true ? "<i class=\"fa fa-toggle-on\"></i>" : "<i class=\"fa fa-toggle-off\"></i>";
}
},
{
label: '创建时间', name: 'F_CreatorTime', width: 80, align: 'left',
formatter: "date", formatoptions: { srcformat: 'Y-m-d', newformat: 'Y-m-d' }
},
{
label: "有效", name: "F_EnabledMark", width: 60, align: "center",
formatter: function (cellvalue) {
return cellvalue == true ? "<i class=\"fa fa-toggle-on\"></i>" : "<i class=\"fa fa-toggle-off\"></i>";
}
},
{ label: "备注", name: "F_Description", index: "F_Description", width: 200, align: "left", sortable: false }
]
});
$("#btn_search").click(function () {
$gridList.jqGrid('setGridParam', {
url: "/SystemManage/ItemsData/GetGridJson",
postData: { itemId: $("#itemTree").getCurrentNode().id, keyword: $("#txt_keyword").val() },
}).trigger('reloadGrid');
});
}
1.1.2、
<div class="ui-layout" id="layout" style="height: 100%; width: 100%;">
<div class="ui-layout-west">
<div id="itemTree"></div>
</div>
<div class="ui-layout-center">
<div class="topPanel">
<div class="toolbar">
</div>
<div class="search">
</div>
</div>
<div class="gridPanel">
<table id="gridList"></table>
</div>
</div>
</div>
1.2、  .cs
1.2.1、/SystemManage/Controlers/ItemsTypeControler.cs
        [HttpGet]
[HandlerAjaxOnly]
public ActionResult GetTreeJson()
{
var data = itemsApp.GetList();
var treeList = new List<TreeViewModel>();
foreach (ItemsEntity item in data)
{
TreeViewModel tree = new TreeViewModel();
bool hasChildren = data.Count(t => t.F_ParentId == item.F_Id) == ? false : true;
tree.id = item.F_Id;
tree.text = item.F_FullName;
tree.value = item.F_EnCode;
tree.parentId = item.F_ParentId;
tree.isexpand = true;
tree.complete = true;
tree.hasChildren = hasChildren;
treeList.Add(tree);
}
return Content(treeList.TreeViewJson());
}
1.2.2、/SystemManage/Controlers/ItemsDataControler.cs
        [HttpGet]
[HandlerAjaxOnly]
public ActionResult GetGridJson(string itemId, string keyword)
{
var data = itemsDetailApp.GetList(itemId, keyword);
return Content(data.ToJson());
}
2、
 
6.返回顶部
1、jqGrid 帮助
2、
 
作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

Code-NFine:jqgrid 数据绑定的更多相关文章

  1. WPF中的数据绑定!!!

    引用自:https://msdn.microsoft.com/zh-cn/magazine/cc163299.aspx  数据点: WPF 中的数据绑定 数据点 WPF 中的数据绑定 John Pap ...

  2. 【笔记】WPF实现ViewPager引导界面效果及问题汇总

    最近在开发项目的首次使用引导界面时,遇到了问题,引导界面类似于安卓手机ViewPager那样的效果,希望通过左右滑动手指来实现切换不同页面,其间伴随动画. 实现思路: 1.界面布局:新建一个UserC ...

  3. 动态合并GridView数据行DataRow的列

    前段时间,Insus.NET一直在演示GridView控件Header头行或列:<动态变更GridView控件列名>和<动态合并或定制GridView控件Header头某些列> ...

  4. .NET Core 3.0预览版7中的ASP.NET Core和Blazor更新

    .NET Core 3.0 Preview 7现已推出,它包含一系列ASP.NET Core和Blazor的新更新. 以下是此预览中的新功能列表: 最新的Visual Studio预览包括.NET C ...

  5. NFine框架JqGrid导出选中行为Excel实现方法

    客户端 function PostAndGetFileByUrl(url,type,postdata) { var temp; $.ajax({ url: url, type: type, data: ...

  6. WPF 数据绑定 使用Code First with Database

    一.准备工作 1.开发工具 Visual Studio 2013 2.安装 Entity Framework 6 Tools for Visual Studio 2012 & 2013 来实现 ...

  7. Code:NFine目录

    ylbtech-Code:NFine目录 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部     6.返回顶部   作者:ylbtech出处:http://ylb ...

  8. Code:NFine框架

    ylbtech-Code:NFine框架 1.返回顶部 1.         2. 2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部     6.返回顶部   作者:ylbtech出 ...

  9. 从Script到Code Blocks、Code Behind到MVC、MVP、MVVM

    刚过去的周五(3-14)例行地主持了技术会议,主题正好是<UI层的设计模式——从Script.Code Behind到MVC.MVP.MVVM>,是前一天晚上才定的,中午花了半小时准备了下 ...

随机推荐

  1. 关于SIP一些总结

    SIP(session Initiation protocol)会话初始协议,是应用层信令控制协议,主要应用于创建.修改.释放多媒体会话. 一般而言,SIP只负责不同UE之间的协商与通信,比如媒体能力 ...

  2. 浅谈Java字符串

    从概念上而言,Java字符串就是Unicode字符序列.由于Java没有内置的字符串类型,而是在标准Java类库中提供了一个预定义类String,每个用双引号的括起来的字符串都是String类的一个实 ...

  3. 解决树莓派8G的SD卡只能识别3.3G,SD卡扩容

    8GB microSD在Windows下使用Win32 Disk Imager下载映像后,在RPi中只能识别出3.3GB.而本身还有很多容量没有释放出来. 使用sudo raspi-config工具可 ...

  4. systemtap-note-6-userspace-stack-backtrace

    http://nanxiao.me/systemtap-note-6-userspace-stack-backtrace/

  5. 数据库系统学习(九)-嵌入式SQL语言之基本技巧

    第九讲 嵌入式SQL语言之基本技巧 901 什么是嵌入式SQL语言 交互式SQL语言的局限性 嵌入式SQL语言 交互式和嵌入式语言的对比 高级语言中使用嵌入式语言需要解决的问题 902 程序与数据库连 ...

  6. RecyclerView的万能切割线

    效果图: 用法: 加入默认切割线:高度为2px.颜色为灰色 mRecyclerView.addItemDecoration(new RecycleViewDivider(mContext, Linea ...

  7. java内部类的一些看法

    java内部类, 我在看<thinking in java>的时候总感觉模棱两可的, 挣扎了好几天之后, 感觉有一部分的问题想的清楚了, 写一个随笔记录一下, 以备以后修改和查看 什么是内 ...

  8. Vim经常使用技巧总结2

    我的主力博客:半亩方塘 1. 在光标所在行查找字符在普通模式下用 f{char} 命令,光标会移动到该字符所在的位置.向下反复查找在普通模式下用 ;,向上回退查找用 , 2. 在光标所在行查找与替换在 ...

  9. log开启与屏蔽的一种调式方式

    #ifndef _LOGGING_H #define _LOGGING_H #define deg printf #ifdef ENABLE_TRACING #define ENTER() do { ...

  10. BMP文件格式具体解释

    BMP文件格式具体解释(BMP file format) BMP文件格式,又称为Bitmap(位图)或是DIB(Device-Independent Device,设备无关位图),是Windows系统 ...