dataTable是一个对后端人员开发的人员来说,是一个很好的前端开发工具。自带了分页,及查询和导出excel还有很多的功能。请看datatables的官网。
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<meta name="renderer" content="webkit|ie-comp|ie-stand">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
<meta http-equiv="Cache-Control" content="no-siteapp" />
<!--[if lt IE 9]>
<script type="text/javascript" src="lib/html5shiv.js"></script>
<script type="text/javascript" src="lib/respond.min.js"></script>
<![endif]-->
<link rel="stylesheet" type="text/css" href="static/h-ui/css/H-ui.min.css" />
<link rel="stylesheet" type="text/css" href="static/h-ui.admin/css/H-ui.admin.css" />
<link rel="stylesheet" type="text/css" href="lib/Hui-iconfont/1.0.8/iconfont.css" />
<link rel="stylesheet" type="text/css" href="static/h-ui.admin/skin/default/skin.css" id="skin" />
<link rel="stylesheet" type="text/css" href="static/h-ui.admin/css/style.css" />
<!-- <link rel="stylesheet" type="text/css" href="js/datatable/css/jquery.dataTables.min.css"> -->
<link rel="stylesheet" type="text/css" href="js/btu/css/buttons.dataTables.min.css" />
<!--[if IE 6]>
<script type="text/javascript" src="lib/DD_belatedPNG_0.0.8a-min.js" ></script>
<script>DD_belatedPNG.fix('*');</script>
<![endif]-->
<title>资讯列表</title>
</head>
<body>
<nav class="breadcrumb"><i class="Hui-iconfont"></i> 首页 <span class="c-gray en">></span> 资讯管理 <span class="c-gray en">></span> 资讯列表 <a class="btn btn-success radius r" style="line-height:1.6em;margin-top:3px" href="javascript:location.replace(location.href);" title="刷新" ><i class="Hui-iconfont"></i></a></nav>
<div class="page-container">
<div class="text-c">
<button onclick="removeIframe()" class="btn btn-primary radius">关闭选项卡</button>
<span class="select-box inline">
<select name="" class="select">
<option value="0">全部分类</option>
<option value="1">分类一</option>
<option value="2">分类二</option>
</select>
</span> 日期范围:
<input type="text" onfocus="WdatePicker({ maxDate:'#F{$dp.$D(\'logmax\')||\'%y-%M-%d\'}' })" id="logmin" class="input-text Wdate" style="width:120px;">
-
<input type="text" onfocus="WdatePicker({ minDate:'#F{$dp.$D(\'logmin\')}',maxDate:'%y-%M-%d' })" id="logmax" class="input-text Wdate" style="width:120px;">
<input type="text" name="" id="" placeholder=" 资讯名称" style="width:250px" class="input-text">
<button name="" id="" class="btn btn-success" type="submit"><i class="Hui-iconfont"></i> 搜资讯</button>
</div>
<div class="cl pd-5 bg-1 bk-gray mt-20"> <span class="l"><a href="javascript:;" onclick="datadel()" class="btn btn-danger radius"><i class="Hui-iconfont"></i> 批量删除</a> <a class="btn btn-primary radius" data-title="添加资讯" data-href="article-add.html" onclick="Hui_admin_tab(this)" href="javascript:;"><i class="Hui-iconfont"></i> 添加资讯</a></span> <span class="r">共有数据:<strong>54</strong> 条</span> </div>
<div class="mt-20">
<table id="example" class="table table-border table-bordered table-bg table-hover table-sort table-responsive">
<thead>
<tr class="text-c">
<th width="25"><input type="checkbox" name="" value=""></th>
<th width="80">ID</th>
<th>标题</th>
<th width="80">分类</th>
<th width="80">来源</th>
<th width="120">更新时间</th>
<th width="75">浏览次数</th>
<th width="60">发布状态</th>
<th width="120">操作</th>
</tr>
</thead>
<tbody>
<tr class="text-c">
<td><input type="checkbox" value="" name=""></td>
<td>10001</td>
<td class="text-l"><u style="cursor:pointer" class="text-primary" onClick="method5(example)" title="查看">资讯标题</u></td>
<td>行业动态</td>
<td>H-ui</td>
<td>2014-6-11 11:11:42</td>
<td>21212</td>
<td class="td-status"><span class="label label-success radius">已发布</span></td>
<td class="f-14 td-manage"><a style="text-decoration:none" onClick="article_stop(this,'10001')" href="javascript:;" title="下架"><i class="Hui-iconfont"></i></a> <a style="text-decoration:none" class="ml-5" onClick="article_edit('资讯编辑','article-add.html','10001')" href="javascript:;" title="编辑"><i class="Hui-iconfont"></i></a> <a style="text-decoration:none" class="ml-5" onClick="article_del(this,'10001')" href="javascript:;" title="删除"><i class="Hui-iconfont"></i></a></td>
</tr>
<tr class="text-c">
<td><input type="checkbox" value="" name=""></td>
<td>10002</td>
<td class="text-l"><u style="cursor:pointer" class="text-primary" onClick="article_edit('查看','article-zhang.html','10002')" title="查看">资讯标题</u></td>
<td>行业动态</td>
<td>H-ui</td>
<td>2014-6-11 11:11:42</td>
<td>21212</td>
<td class="td-status"><span class="label label-success radius">草稿</span></td>
<td class="f-14 td-manage"><a style="text-decoration:none" onClick="article_shenhe(this,'10001')" href="javascript:;" title="审核">审核</a> <a style="text-decoration:none" class="ml-5" onClick="article_edit('资讯编辑','article-add.html','10001')" href="javascript:;" title="编辑"><i class="Hui-iconfont"></i></a> <a style="text-decoration:none" class="ml-5" onClick="article_del(this,'10001')" href="javascript:;" title="删除"><i class="Hui-iconfont"></i></a></td>
</tr>
</tbody>
</table>
</div>
</div>
<!--_footer 作为公共模版分离出去-->
<script type="text/javascript" src="lib/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript" src="lib/layer/2.4/layer.js"></script>
<script type="text/javascript" src="static/h-ui/js/H-ui.min.js"></script>
<script type="text/javascript" src="static/h-ui.admin/js/H-ui.admin.js"></script> <!--/_footer 作为公共模版分离出去-->
<!--请在下方写此页面业务相关的脚本-->
<script type="text/javascript" src="lib/My97DatePicker/4.8/WdatePicker.js"></script>
<script type="text/javascript" src="lib/datatables/1.10.0/jquery.dataTables.min.js"></script>
<script type="text/javascript" src="lib/laypage/1.2/laypage.js"></script>
<script type="text/javascript" src="js/tableExport.js"></script>
<!-- <script src="https://cdn.bootcss.com/datatables-tabletools/2.1.5/js/TableTools.min.js"></script> -->
<script type="text/javascript" src="js/datatable/js/jquery.dataTables.min.js"></script>
<script type="text/javascript" src="js/btu/js/dataTables.buttons.min.js"></script>
<script type="text/javascript" src="js/js/buttons.html5.js"></script>
<!--<script type="text/javascript" src="js/js/dataTables.buttons.js"></script> -->
<script type="text/javascript">
/* 页面加载出现数据 */
$(function(){
console.log("首页加载");
$.post("../getZxgl.do",function(data){
console.log("data数据+"+data);
$(data).each(function(i,v){
console.table("data"+data);
/* console.log("v的值为"+v.dd_id); */
/* var a=v.ul_id; */
var content = "<tr class='text-c'>";
var aa="";
/* var bb="";<input type="checkbox" value="" name=""> */
content += "<td><input type='checkbox' value='' name=''></td>";
content += "<td>"+1000+v.id+"</td>";
content += "<td>"+v.biaoti+"</td>";
content += "<td>"+v.biaoti+"</td>";
content += "<td>"+v.biaoti+"</td>";
content += "<td>"+v.biaoti+"</td>";
content += "<td>"+v.biaoti+"</td>";
/* <td class="td-status"><span class="label label-success radius">草稿</span></td> */
content +="<td class='td-status'><span class='label label-success radius'>草稿</span></td>"
content +="<td class='f-14 td-manage'>"
+ "<a style='text-decoration:none' onClick='article_stop(this,"+"10001"+")' href='javascript:;' title='下架'><i class='Hui-iconfont'></i></a>"
+ "<a style='text-decoration:none' class='ml-5' onClick='article_edit("+"资讯编辑"+","+"article-add.html"+","+"10001"+")' href='javascript:;' title='编辑'><i class='Hui-iconfont'></i></a>"
+ "<a style='text-decoration:none' class='ml-5' onClick='article_del(this,"+"10001"+")' href='javascript:;' title='删除'><i class='Hui-iconfont'></i></a>"
+"</td>";
content += "</tr>";
$("tbody").append(content);
});
getData();
getEx();
},"json");
});
/*资讯搜索*/
function getData(){
$('#example').dataTable({
"aaSorting": [[ 1, "asc" ]],//默认第几个排序
"bStateSave": false,//状态保存
"pading":false,
"searching": true,
"aoColumnDefs": [
//{"bVisible": false, "aTargets": [ 3 ]} //控制列的隐藏显示
{"orderable":false,"aTargets":[0,8]}// 不参与排序的列
]
});
}
/*资讯-添加*/
function article_add(title,url,w,h){
var index = layer.open({
type: 2,
title: title,
content: url
});
layer.full(index);
}
/*资讯-编辑*/
function article_edit(title,url,id,w,h){
var index = layer.open({
type: 2,
title: title,
content: url
});
layer.full(index);
}
/*资讯-删除*/
function article_del(obj,id){
layer.confirm('确认要删除吗?',function(index){
$.ajax({
type: 'POST',
url: '',
dataType: 'json',
success: function(data){
$(obj).parents("tr").remove();
layer.msg('已删除!',{icon:1,time:1000});
},
error:function(data) {
console.log(data.msg);
},
});
});
}
/*资讯-审核*/
function article_shenhe(obj,id){
layer.confirm('审核文章?', {
btn: ['通过','不通过','取消'],
shade: false,
closeBtn: 0
},
function(){
$(obj).parents("tr").find(".td-manage").prepend('<a class="c-primary" onClick="article_start(this,id)" href="javascript:;" title="申请上线">申请上线</a>');
$(obj).parents("tr").find(".td-status").html('<span class="label label-success radius">已发布</span>');
$(obj).remove();
layer.msg('已发布', {icon:6,time:1000});
},
function(){
$(obj).parents("tr").find(".td-manage").prepend('<a class="c-primary" onClick="article_shenqing(this,id)" href="javascript:;" title="申请上线">申请上线</a>');
$(obj).parents("tr").find(".td-status").html('<span class="label label-danger radius">未通过</span>');
$(obj).remove();
layer.msg('未通过', {icon:5,time:1000});
});
}
/*资讯-下架*/
function article_stop(obj,id){
layer.confirm('确认要下架吗?',function(index){
$(obj).parents("tr").find(".td-manage").prepend('<a style="text-decoration:none" onClick="article_start(this,id)" href="javascript:;" title="发布"><i class="Hui-iconfont"></i></a>');
$(obj).parents("tr").find(".td-status").html('<span class="label label-defaunt radius">已下架</span>');
$(obj).remove();
layer.msg('已下架!',{icon: 5,time:1000});
});
}
/*资讯-发布*/
function article_start(obj,id){
layer.confirm('确认要发布吗?',function(index){
$(obj).parents("tr").find(".td-manage").prepend('<a style="text-decoration:none" onClick="article_stop(this,id)" href="javascript:;" title="下架"><i class="Hui-iconfont"></i></a>');
$(obj).parents("tr").find(".td-status").html('<span class="label label-success radius">已发布</span>');
$(obj).remove();
layer.msg('已发布!',{icon: 6,time:1000});
});
}
/*资讯-申请上线*/
function article_shenqing(obj,id){
$(obj).parents("tr").find(".td-status").html('<span class="label label-default radius">待审核</span>');
$(obj).parents("tr").find(".td-manage").html("");
layer.msg('已提交申请,耐心等待审核!', {icon: 1,time:2000});
}
//第五种方法
/* var idTmr;
function getExplorer() {
var explorer = window.navigator.userAgent ;
//ie
if (explorer.indexOf("MSIE") >= 0) {
return 'ie';
}
//firefox
else if (explorer.indexOf("Firefox") >= 0) {
return 'Firefox';
}
//Chrome
else if(explorer.indexOf("Chrome") >= 0){
return 'Chrome';
}
//Opera
else if(explorer.indexOf("Opera") >= 0){
return 'Opera';
}
//Safari
else if(explorer.indexOf("Safari") >= 0){
return 'Safari';
}
}
function method5(tableid) {
if(getExplorer()=='ie')
{
var curTbl = document.getElementById(tableid);
var oXL = new ActiveXObject("Excel.Application");
var oWB = oXL.Workbooks.Add();
var xlsheet = oWB.Worksheets(1);
var sel = document.body.createTextRange();
sel.moveToElementText(curTbl);
sel.select();
sel.execCommand("Copy");
xlsheet.Paste();
oXL.Visible = true;
try {
var fname = oXL.Application.GetSaveAsFilename("Excel.xls", "Excel Spreadsheets (*.xls), *.xls");
} catch (e) {
print("Nested catch caught " + e);
} finally {
oWB.SaveAs(fname);
oWB.Close(savechanges = false);
oXL.Quit();
oXL = null;
idTmr = window.setInterval("Cleanup();", 1);
}
}
else
{
tableToExcel(tableid)
}
}
function Cleanup() {
window.clearInterval(idTmr);
CollectGarbage();
}
var tableToExcel = (function() {
var uri = 'data:application/vnd.ms-excel;base64,',
template = '<html><head><meta charset="UTF-8"></head><body><table>{table}</table></body></html>',
base64 = function(s) { return window.btoa(unescape(encodeURIComponent(s))) },
format = function(s, c) {
return s.replace(/{(\w+)}/g,
function(m, p) { return c[p]; }) }
return function(table, name) {
if (!table.nodeType) table = document.getElementById(table)
var ctx = {worksheet: name || 'Worksheet', table: table.innerHTML}
window.location.href = uri + base64(format(template, ctx))
}
})() */
/* $(document).ready(function() {
$('#example').DataTable( {
destroy: true,
dom: 'Bfrtip',
"buttons": [
{ "bRetrieve": true,
'extend': 'excel',
'text': '导出',//定义导出excel按钮的文字
'exportOptions': {
'modifier': {
'page': 'current'
}
}
}
],
} );
} ); */
function getEx(){
$('#example').DataTable( {
destroy: true, //这句话相当重要。
dom: 'Bfrtip',
"bStateSave": false,
"bLengthChange": false,
//是否打开客户端状态记录功能。这个数据是记录在cookies中的,
//打开了这个记录后,即使刷新一次页面,或重新打开浏览器,之前的状态都是保存下来的- ------当值为true时aoColumnDefs不能隐藏列
"sPaginationType": "full_numbers",
"oLanguage": {
"sProcessing": "正在加载中......",
"sLengthMenu": "每页显示 _MENU_ 条记录",
"sZeroRecords": "对不起,查询不到相关数据!",
"sEmptyTable": "表中无数据存在!",
"sInfo": "当前显示 _START_ 到 _END_ 条,共 _TOTAL_ 条记录",
"sInfoEmpty": "显示第 0 至 0 项结果,共 0 项",
"sInfoFiltered": "数据表中共为 _MAX_ 条记录",
"sSearch": "搜索:",
"oPaginate": {
"sFirst": "首页",
"sPrevious": "上一页",
"sNext": "下一页",
"sLast": "末页"
}
}, //多语言配置
buttons: [
'excelHtml5',
'csvHtml5',
'pdfHtml5'
]
} );
}
</script>
</body>
</html>