效果:
JS代码:
var pagesize = 10; $(document).ready(function() { var titleArray = [ {"className":'details-control',"orderable":false,"mData":null,"defaultContent": ''}, {"sTitle" : "网站名称","mData" : "webSiteName","bSortable" : false}, {"sTitle" : "网站域名","mData" : "domainName","bSortable" : false}, {"sTitle" : "IP","mData" : "ips","bSortable" : false}, {"sTitle" : "网站状态","mData" : "statusName","bSortable" : false}, {"className":'',"orderable":false,"mData":null}]; var table = $('#siteCancel').DataTable({ "sAjaxSource": ctx+"/hallBackstage/loadCancelSites", "aoColumns": titleArray, "bProcessing": true, "bFilter": true, //过滤功能 "bSort": false, //排序功能 "iDisplayLength": pagesize, // 每页显示多少条数据 "bPaginate" : true, "bLengthChange" : false, "bInfo":true, "bDestroy":true, "bJQueryUI": false, "bServerSide" : true, // 服务器端查找数据 "fnRowCallback" : function(nRow, aData, iDisplayIndex) { if(aData.status=="S0"){ $("td:eq(4)", nRow).html('<a id="' + aData.id + '" onclick="showSiteHistory(this)" title="查看备案记录"><font color="red">' + aData.statusName + '</font></a>'); }else{ $("td:eq(4)", nRow).html('<a id="' + aData.id + '" onclick="showSiteHistory(this)" title="查看备案记录"><font color="blue">' + aData.statusName + '</font></a>'); } if(null!=aData.ips){ if(aData.ips.length > 45){ var ipssort = aData.ips.substring(0, 45); $("td:eq(3)", nRow).html("<span title='" + aData.ips + "'>" + ipssort + "...</span>"); } } if(aData.flowStatus=="F9"&&(aData.status=="S1"||aData.status=="S2")){ $("td:eq(5)", nRow).html('<a id="' + aData.id + '" class="con_btn gray" title="注销">注销</a>'); }else{ $("td:eq(5)", nRow).html('<a id="' + aData.id + '" onclick="cancelWebSite(this)" class="con_btn" title="注销">注销</a>'); } $("td:eq(5)", nRow).css("text-align","center"); } }); $(".dataTables_filter").hide(); // 绑定搜索事件 $('#cancelBtn').on('click', datatableFilter); // Add event listener for opening and closing details $('#siteCancel tbody').on('click', 'td.details-control', function () { var tr = $(this).closest('tr'); var row = table.row( tr ); if ( row.child.isShown() ) { // This row is already open - close it row.child.hide(); tr.removeClass('shown'); } else { // Open this row format(row); //row.child( format(row.data()) ).show(); tr.addClass('shown'); } }); }); function datatableFilter() { var webSiteNameCan = $('#cancelWebSiteName').val(); var domainNameCan = $("#cancelDomainName").val(); var ips = $("#cancelIp").val(); var json = {}; if(webSiteNameCan != ""){ json['webSiteName'] = webSiteNameCan; } if(domainNameCan != ""){ json['domainName'] = domainNameCan; } if(ips != ""){ json['ips'] = ips; } $('#siteCancel').dataTable().fnFilter(JSON.stringify(json)); }; function format (row) { var d = row.data(); var selectedId = d.id; var tableStr=""; if(null!=selectedId){ $.ajax({ url: ctx+'/hallBackstage/loadSiteByRelid?id=' + selectedId, type: 'POST', async: false, dataType : 'json', processData: false, success: function(data) { tableStr = '<table class="sub_tab" style="width: 99%; margin:0px 5px 5px;" cellpadding="0" cellspacing="0" border="0"'; if(null!=data&&data.length>0){ for(var i=0;i<data.length;i++){ tableStr+='<tr>'+ '<td width="5%"></td>'+ '<td width="15%">'+data[i].webSiteName+'</td>'+ '<td width="15%">'+data[i].domainName+'</td>'+ '<td width="30%">'+d.ips+'</td>'+ '<td width="15%">子域名</td>'; if(data[i].flowStatus=="F9"){ tableStr+='<td style="text-align:center;" width="10%"><a id="' + data[i].id + '" class="con_btn gray" title="注销">注销</a></td>'; }else{ tableStr+='<td style="text-align:center;" width="10%"><a id="' + data[i].id + '" onclick="cancelWebSite(this)" class="con_btn" title="注销">注销</a></td>'; } tableStr+='</tr>'; } tableStr+='</table>'; row.child(tableStr).show(); }else{ tableStr+='<tr><td width="100%" style="text-align: center;">信息为空!</td></tr></table>'; row.child(tableStr).show(); } } }); } }
需要的css:
<style type="text/css"> td.details-control { background: url('../static/images/details_open.png') no-repeat center center; cursor: pointer; } tr.shown td.details-control { background: url('../static/images/details_close.png') no-repeat center center; } </style>
需要引入的js及css:
<link href="${ctx}/static/datatables/css/jquery.dataTables.css" rel="stylesheet" type="text/css" />
<link href="${ctx}/static/bootstrap/3.3.1/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
<link href="${ctx}/static/datatables/css/dataTables.bootstrap.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="${ctx}/static/datatables/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="${ctx}/static/datatables/jquery.dataTables.min.js"></script>
<script type="text/javascript" src="${ctx}/static/bootstrap/3.3.1/js/bootstrap.min.js"></script>
<script type="text/javascript" src="${ctx}/static/datatables/dataTables.bootstrap.js"></script>
相关推荐
在本文中,我们将深入探讨Laravel开发中的laravel-datable工具,这是一个专为Laravel框架设计的小巧且功能强大的包,特别适用于处理日期显示的本地化。laravel-datable允许开发者轻松地在应用中切换不同的日期格式,...
c#常用的Datable转换为json,以及json转换为DataTable操作方法 * 备注信息: 上传部分自己总结的常用方法的封装,有不足和不完美之处,希望大家指出来,愿意一起 * 主要研究erp,cms,crm,b2b,oa等系统和网站的开发...
在C#编程环境中,导出Excel表格是一项常见的需求,尤其在数据处理和报告生成时。本文将详细讲解如何使用C#来实现Excel表格的导出,包括xls和xlsx两种常见格式。 首先,我们需要理解这两种格式的区别。Xls是Excel...
标题 "Linq to datable(Left join right join full join)实例" 涉及到的是在.NET框架中,使用LINQ(Language Integrated Query)查询语言处理DataTable对象时,执行不同类型的连接操作,包括左连接(Left Join)、右...
先上效果图: 前端数据表格: <%-- 数据表格 --%> lay-filter=test> <thead>
在.NET Framework中,DataGridView是Windows Forms应用程序中一种非常强大的数据展示和编辑控件。它可以绑定到各种数据源,包括DataTable、DataSet等,并提供丰富的功能来显示和操作数据。有时候,我们可能需要将...
您从未执行过该命令。 请参阅:...请参阅“方法”部分。 您需要使用包含子字符串“ Execute”的名称来调用方法之一。 由于您的命令是“插入”,因此您可以使用...
NPOI是一个强大的开源库,专门用于处理Microsoft Office文件,包括Excel。在.NET环境中,它为开发者提供了方便的方式来读取、写入Excel文件,而无需安装Microsoft Office。本项目主要涉及的是如何使用NPOI库将Excel...
这个库基于jQuery框架,可以无缝地整合到现有的Web应用中,为用户带来交互式的表格体验。 首先,jQuery DataTables的核心特性包括: 1. **数据源支持**:DataTables支持多种数据源,如HTML表格数据、CSV、JSON、...
而DataTable是.NET Framework中的一个类,用于在内存中存储数据,它类似于数据库中的表格。 本文介绍了一种将JSON字符串转换为DataTable的方法。这个方法主要分为以下几个步骤: 1. **预处理JSON字符串**:首先,...
在IT行业中,尤其是在软件开发领域,自动化工具的使用可以极大地提高效率并减少重复性工作。本文将详细讨论“C#自动代码生成数据库的数据表自动创建”这一技术主题,以及如何利用这种技术来优化数据库和代码的管理。...
DB类:数据库访问类 属性: ConnString——连接字符串(如:server=.;uid=sa;pwd=;database=ufdata_001_2010) CMDstring——未使用 oleConnString——连接ACCESS数据库的字符串 方法: OpenConn——打开数据库(无...
VB.NET Web开发中CSV出力实例
asp.net 讲查询到的数据以XML格式显示到页面上
在处理Excel文件时,一个常见的需求是将Excel的数据转换为DataTable,因为DataTable是.NET框架中用于存储和操作表格数据的一个强大组件。这个过程通常包括以下几个步骤: 1. 引用NPOI库:在你的项目中,你需要添加...
此文件为Excel导入成Datable 和Datable导入成Excel方法
DataTable 缓存数据操作 DataTable 缓存数据操作是 ADO.NET 中的一种数据存储机制,主要用于缓存和操作数据。 DataTable 是 DataSet 中的组成部分,用于存储数据。 DataSet 是一个内存中的关系数据库,用于存储数据...
在C#编程中,`DataTable` 是一个非常重要的数据结构,它用于存储和操作表格形式的数据,类似于数据库中的表格。在处理大量数据时,我们经常需要对这些数据进行排序,以便进行更有效的分析和展示。本篇文章将详细介绍...
horizontal_data_table Flutter Widget,用于创建水平表,左侧固定列。安装该程序包开始支持声音为零的安全性。 尽管该软件包是手动迁移的,并已通过每个功能进行了测试,但如果集成/迁移存在任何问题,请随时在...
比较两个datatable之间数据的差异,将从主表没有、从表有或是从表没有、主表有的数据输出到另一张datatable,以便将差异数据输出显示。