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. dropwizard问题记录1:如何进行mvn package打包,如何在项目目录下运行

    dropwizard的helloworld入门教程,跟着教程一步步写很容易,但是最后打包时暴露了自己底子太差的缺陷 mvn package操作 之前工作中完全没有接触过这种打包方式,都是直接打war包 ...

  2. Android-事件体系全面总结+实践分析

    事件分发在Android中是很重要的基础知识,网上相关的文章也很多,但是花了很多精力看了很多别人的分析总结,最终的感觉还是似懂非懂,所以决定自己动手研究一下,去发现其中的规律.本文顺着我自己的思路去研 ...

  3. Action Bar详解(二)

    在Android3.0之后,Google对UI导航设计上进行了一系列的改革,其中有一个非常好用的新功能就是引入的ActionBar,他用于取代3.0之前的标题栏,并提供更为丰富的导航效果. 一.添加A ...

  4. VMware Workstation 虚拟机设置连接U盘

    首先确保主机有开启"VMware USB Arbitration Service"服务,而且在执行中. 如图:(我的系统是win8.1 ) 在VMware Workstation虚 ...

  5. MySQL之常见问题总结

    MySQL总是崩溃 首先你应该试着找出问题MySQLd守护进程是否死掉或你的问题是否与你的客户有关.你能够用MySQLadmin version检查你的MySQLdserver正常运行了多长时间.假设 ...

  6. HDU 1040 As Easy As A+B [补]

    今天去老校区找她,不想带电脑了,所以没时间A题了 /*******************************************************************/ As Ea ...

  7. ok6410[000] 搭建裸机开发环境

    1.安装交叉工具链arm-linux-gcc-4.3.2 先把这个工具复制到rhat系统中[rhel-server-6.3-i386-dvd.iso] 解压arm-linux-gcc-4.3.2到一个 ...

  8. Appium&python

    Appium官网所描述的特性,都很吸引人,刚好最近在研究Mobile Automation Testing,所以很有兴趣探索下Appium这个年轻的工具. 不过看了官网的documents,实在是让初 ...

  9. 【bzoj1433】[ZJOI2009]假期的宿舍

    按要求连边,跑匈牙利 #include<algorithm> #include<iostream> #include<cstdlib> #include<cs ...

  10. Region Range

    三篇文章了解 TiDB 技术内幕 - 说存储| PingCAP https://pingcap.com/blog-cn/tidb-internal-1/ 对于一个 KV 系统,将数据分散在多台机器上有 ...