博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ASP.NET MVC 5 ABP DataTables (一)
阅读量:6963 次
发布时间:2019-06-27

本文共 7194 字,大约阅读时间需要 23 分钟。

2)  

JS DataTables 这个组件绑定数据必须要有自己的返回数据格式。但是ABP返回的格式直接绑定是错误。重写ABP返回格式符合DataTables 要求 。

///         /// 构造函数        ///         /// 请求次数计数器        /// 总共记录数        /// 过滤后的记录数        /// 数据        /// 服务器错误信息        public JsonResult DataTablesResult
( int draw, int recordsTotal, int recordsFiltered, IReadOnlyList
data, string error = null, JsonRequestBehavior behavior = JsonRequestBehavior.DenyGet) { var result = new DataTablesResult
(draw, recordsTotal, recordsFiltered, data); return DataTableJson(result, null, Encoding.UTF8, behavior); } public virtual JsonResult DataTableJson( object data, string contentType = null, Encoding contentEncoding = null, JsonRequestBehavior behavior = JsonRequestBehavior.DenyGet) { return new JsonResult() { Data = data, ContentType = contentType, ContentEncoding = contentEncoding, JsonRequestBehavior = behavior }; }
public class DataTablesParameters    {        ///         ///     请求次数计数器        ///         public int Draw { get; set; }        ///         ///     第一条数据的起始位置        ///         public int Start { get; set; }        ///         ///     每页显示的数据条数        ///         public int Length { get; set; }        ///         ///     数据列        ///         public List
Columns { get; set; } ///
/// 排序 /// public List
Order { get; set; } ///
/// 搜索 /// public DataTablesSearch Search { get; set; } ///
/// 排序字段 /// public string OrderBy { get { return Columns != null && Columns.Any() && Order != null && Order.Any() ? Columns[Order[0].Column].Data : string.Empty; } } ///
/// 排序模式 /// public DataTablesOrderDir OrderDir { get { return Order != null && Order.Any() ? Order[0].Dir : DataTablesOrderDir.Desc; } } }
DataTablesParameters
public class DataTablesResult
{ ///
/// 构造函数 /// ///
请求次数计数器 ///
总共记录数 ///
过滤后的记录数 ///
数据 public DataTablesResult(int draw0, int recordsTotal0, int recordsFiltered0, IReadOnlyList
data0) { draw = draw0; recordsTotal = recordsTotal0; recordsFiltered = recordsFiltered0; data = data0; } ///
/// 构造函数 /// ///
服务器错误信息 public DataTablesResult(string error0) { error = error0; } ///
/// 请求次数计数器 /// public int draw { get; set; } ///
/// 总共记录数 /// public int recordsTotal { get; set; } ///
/// 过滤后的记录数 /// public int recordsFiltered { get; set; } ///
/// 数据 /// public IReadOnlyList
data { get; set; } ///
/// 错误信息 /// public string error { get; set; } }
DataTablesResult
/* dataTables列内容居中 */.table {
width: 100% !important;}.table > tbody > tr > td {
overflow: hidden; text-overflow: ellipsis;}.table > thead > tr > th {
text-align: center;}.table > tbody > tr > td {
text-align: center;}/* dataTables表头居中 */.dataTables_scrollHead, .dataTables_scrollBody {
border-bottom: 0px !important;}.dataTables_scrollHeadInner, #InspectionRecordTable {
border-bottom: 1px solid #e7ecf1 !important;margin: 0 !important;}.scrolltable {
height: 350px;overflow-x: hidden;overflow-y: auto;width: 100%;}
CSS
var table = $('#MI_InspectionPlanTable');   table.dataTable({
// Internationalisation. For more info refer to http://datatables.net/manual/i18n "language": { "url": '/Scripts/datatables/DataTable_language.json' }, "bStateSave": true, //是否打开客户端状态记录功能,此功能在ajax刷新纪录的时候不会将个性化设定回复为初始化状态 "sScrollX": "100%", //DataTables的宽 "aLengthMenu": [10, 20, 60], //更改显示记录数选项 "iDisplayLength": 10, //默认显示的记录数 "bAutoWidth": true, //是否自适应宽度 "bPaginate": true, //是否显示(应用)分页器 "bInfo": false, //是否显示页脚信息,DataTables插件左下角显示记录数 "sPaginationType": "full_numbers", //详细分页组,可以支持直接跳转到某页 "bSort": false, //是否启动各个字段的排序功能 "ordering": false, "bFilter": false, //是否启动过滤、搜索功能 "bProcessing": false, //DataTables载入数据时,是否显示‘进度’提示 //当前这个进度显示有问题 需要调整 "serverSide": true,//true代表后台处理分页,false代表前台处理分页 "dom": "
ip>", "ajax": {
"url": "/main/InspectionPlan/GetMI_InspectionPlanAll", "type": "post", "data": function (d) { d.ModelType = 0; d.FileType = fileType; }, "error": handleAjaxError() }, "columnDefs": [ {
"targets": 0, "render": function (data, type, meta) { return '
'; }, "bSortable": false } ], "columns": [ {
"sWidth": "30px" }, {
"data": "FileName", "bSortable": false }, {
"data": "FileSize", "bSortable": false }, {
"data": "Remarks", "bSortable": false }, {
"data": "CreateTime", "bSortable": false }, {
"sDefaultContent": '
\
\
\
', "sWidth": "100px", "bSortable": false } ] });
JS
{  "sProcessing": "正在加载数据...",  "sLengthMenu": "显示_MENU_条 ",  "sZeroRecords": "没有您要搜索的内容",  "sInfo": "显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项",  "sInfoEmpty": "显示第 0 至 0 项结果,共 0 项",  "sInfoFiltered": "(全部记录数 _MAX_  条)",  "sEmptyTable": "
没有数据
", "sInfoPostFix": "", "sLoadingRecords": "载入中...", "sSearch": "搜索", "sUrl": "", "oPaginate": { "sFirst": "首页", "sPrevious": "上页 ", "sNext": " 下页 ", "sLast": "尾页 " }, "oAria": { "sSortAscending": "以升序排列此列", "sSortDescending": "以降序排列此列" }}
DataTables 汉化

转载地址:http://kuwsl.baihongyu.com/

你可能感兴趣的文章
Linux命令之chkconfig
查看>>
单臂路由的实现
查看>>
还有人不认识通讯诈骗,短信验证码带你认识一下
查看>>
用maven时出现,报错 miss 一些包,但是发现项目里已经引入了,但还是报错
查看>>
大快DKhadoop大数据处理平台详解
查看>>
摄影菜鸟使用的相机镜头术语大全分享
查看>>
XenServer部署系列之06——网络配置
查看>>
Python黑科技:50行代码运用Python+OpenCV实现人脸追踪+详细教程+快速入门+图像识...
查看>>
软件测试质量和效率评价之我见
查看>>
kloxo增加了域名,怎么不能访问?如何重启web服务?
查看>>
国学题库整理
查看>>
jquery chosen 插件 动态设置+更新选项值
查看>>
求最大值及其下标
查看>>
战力会议1
查看>>
水印情缘。。。
查看>>
为什么重写equals一定要重写hashCode?
查看>>
HDU Problem 4006 The kth great number 【队列】
查看>>
win8阉割版中文输入法
查看>>
Codeforces VK Cup 2015 A.And Yet Another Bracket Sequence(后缀数组+平衡树+字符串)
查看>>
以Drools5.5为例说明“规则引擎在业务系统中应用”---起始篇
查看>>