2018-07-25 15:06:06 +00:00
|
|
|
<!DOCTYPE html>
|
|
|
|
|
<html>
|
|
|
|
|
<head>
|
|
|
|
|
<meta charset="UTF-8">
|
|
|
|
|
<title>文章列表</title>
|
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
|
2019-03-29 15:53:37 +00:00
|
|
|
<link rel="stylesheet" href="css/okadmin.css">
|
2018-08-03 04:18:42 +00:00
|
|
|
<link rel="stylesheet" href="lib/nprogress/nprogress.css">
|
2018-07-25 15:06:06 +00:00
|
|
|
</head>
|
|
|
|
|
<body>
|
2018-08-03 04:18:42 +00:00
|
|
|
<div class="ok-body">
|
|
|
|
|
<!--面包屑导航区域-->
|
|
|
|
|
<div class="ok-body-breadcrumb">
|
2019-03-31 08:54:23 +00:00
|
|
|
<span class="layui-breadcrumb">
|
|
|
|
|
<a><cite>首页</cite></a>
|
|
|
|
|
<a><cite>常用页面</cite></a>
|
|
|
|
|
<a><cite>文章列表</cite></a>
|
|
|
|
|
</span>
|
2019-02-14 14:43:38 +00:00
|
|
|
<a class="layui-btn layui-btn-sm" href="javascript:location.replace(location.href);" title="刷新">
|
2018-08-03 04:18:42 +00:00
|
|
|
<i class="layui-icon layui-icon-refresh"></i>
|
|
|
|
|
</a>
|
|
|
|
|
</div>
|
|
|
|
|
<!--模糊搜索区域-->
|
|
|
|
|
<div class="layui-row">
|
|
|
|
|
<form class="layui-form layui-col-md12 ok-search">
|
|
|
|
|
<input class="layui-input" placeholder="开始日期" autocomplete="off" id="startTime">
|
|
|
|
|
<input class="layui-input" placeholder="截止日期" autocomplete="off" id="endTime">
|
|
|
|
|
<input class="layui-input" placeholder="请输入标题" autocomplete="off">
|
|
|
|
|
<button class="layui-btn" lay-submit="" lay-filter="search">
|
|
|
|
|
<i class="layui-icon layui-icon-search"></i>
|
2018-07-25 15:06:06 +00:00
|
|
|
</button>
|
2018-08-03 04:18:42 +00:00
|
|
|
</form>
|
2018-07-25 15:06:06 +00:00
|
|
|
</div>
|
2018-08-03 04:18:42 +00:00
|
|
|
<!--工具栏-->
|
|
|
|
|
<okToolbar>
|
|
|
|
|
<button class="layui-btn layui-btn-normal" id="batchEnabled">
|
|
|
|
|
<i class="iconfont icon-shangsheng"></i>批量上架
|
|
|
|
|
</button>
|
|
|
|
|
<button class="layui-btn layui-btn-warm" id="batchDisabled">
|
|
|
|
|
<i class="iconfont icon-web-icon-"></i>批量下架
|
|
|
|
|
</button>
|
|
|
|
|
<button class="layui-btn layui-btn-danger" id="batchDel">
|
|
|
|
|
<i class="layui-icon layui-icon-delete"></i>批量删除
|
|
|
|
|
</button>
|
|
|
|
|
<button class="layui-btn" id="addUser">
|
|
|
|
|
<i class="layui-icon"></i>添加文章
|
|
|
|
|
</button>
|
|
|
|
|
<span>共有数据:<i id="countNum"></i> 条</span>
|
|
|
|
|
</okToolbar>
|
|
|
|
|
<!--数据表格-->
|
|
|
|
|
<table class="layui-hide" id="tableId" lay-filter="tableFilter"></table>
|
|
|
|
|
</div>
|
|
|
|
|
<!--js逻辑-->
|
|
|
|
|
<script src="lib/layui/layui.js"></script>
|
|
|
|
|
<script src="lib/nprogress/nprogress.js"></script>
|
|
|
|
|
<script>
|
|
|
|
|
// 进度条加载提示
|
|
|
|
|
NProgress.start();
|
|
|
|
|
window.onload = function () {
|
|
|
|
|
NProgress.done();
|
|
|
|
|
}
|
|
|
|
|
// layui相关
|
2019-04-14 07:09:15 +00:00
|
|
|
layui.use(["element", "table", "form", "jquery", "laydate"], function () {
|
2018-08-03 04:18:42 +00:00
|
|
|
var table = layui.table;
|
|
|
|
|
var form = layui.form;
|
|
|
|
|
var $ = layui.jquery;
|
|
|
|
|
var laydate = layui.laydate;
|
2018-08-03 01:31:41 +00:00
|
|
|
|
2019-05-12 08:15:57 +00:00
|
|
|
laydate.render({elem: "#startTime", type: "datetime"});
|
|
|
|
|
laydate.render({elem: "#endTime", type: "datetime"});
|
2018-08-03 01:31:41 +00:00
|
|
|
|
2018-08-03 04:18:42 +00:00
|
|
|
table.render({
|
2019-04-14 07:09:15 +00:00
|
|
|
elem: "#tableId",
|
|
|
|
|
url: "data/article.json",
|
2018-08-03 04:18:42 +00:00
|
|
|
limit: 10,
|
|
|
|
|
page: true,
|
|
|
|
|
even: true,
|
|
|
|
|
cols: [[
|
2019-04-14 07:09:15 +00:00
|
|
|
{type: "checkbox"},
|
|
|
|
|
{field: "id", title: "ID", width: 80, sort: true},
|
|
|
|
|
{field: "title", title: "标题", width: 350},
|
|
|
|
|
{field: "url", title: "链接", width: 250, templet: "#urlTpl"},
|
|
|
|
|
{field: "readSize", title: "阅读量", width: 80},
|
|
|
|
|
{field: "publisher", title: "发布者", width: 100},
|
|
|
|
|
{field: "isTop", title: "置顶", width: 100, templet: "#topTpl"},
|
|
|
|
|
{field: "status", title: "状态", width: 100, templet: "#statusTpl"},
|
|
|
|
|
{title: "操作", width: 200, align: "center", templet: "#operationTpl"}
|
2018-08-03 04:18:42 +00:00
|
|
|
]],
|
|
|
|
|
done: function (res, curr, count) {
|
|
|
|
|
$("#countNum").text(count);
|
|
|
|
|
}
|
|
|
|
|
});
|
2018-08-03 01:31:41 +00:00
|
|
|
|
2019-04-14 07:09:15 +00:00
|
|
|
form.on("submit(search)", function () {
|
|
|
|
|
layer.msg("正在查询,请稍后...");
|
2018-08-03 04:18:42 +00:00
|
|
|
return false;
|
|
|
|
|
});
|
2018-08-03 01:31:41 +00:00
|
|
|
|
2019-04-14 07:09:15 +00:00
|
|
|
table.on("tool(tableFilter)", function (obj) {
|
2018-08-03 04:18:42 +00:00
|
|
|
var data = obj.data;
|
|
|
|
|
var layEvent = obj.event;
|
2019-04-14 07:09:15 +00:00
|
|
|
if (layEvent === "edit") {
|
2018-08-03 04:18:42 +00:00
|
|
|
layer.open({
|
2019-04-14 07:09:15 +00:00
|
|
|
title: "编辑用户",
|
2018-08-03 04:18:42 +00:00
|
|
|
type: 2,
|
|
|
|
|
shade: false,
|
|
|
|
|
maxmin: true,
|
|
|
|
|
shade: 0.5,
|
2019-04-14 07:09:15 +00:00
|
|
|
area: ["90%", "90%"],
|
|
|
|
|
content: "article-edit.html",
|
2018-08-03 04:18:42 +00:00
|
|
|
zIndex: layer.zIndex,
|
|
|
|
|
end: function () {
|
|
|
|
|
$(".layui-laypage-btn")[0].click();
|
|
|
|
|
}
|
|
|
|
|
});
|
2019-04-14 07:09:15 +00:00
|
|
|
} else if (layEvent === "del") {
|
|
|
|
|
layer.confirm("确定要删除吗?", {skin: "layui-layer-lan", icon: 2, title: "提示", anim: 6}, function () {
|
2018-07-25 15:06:06 +00:00
|
|
|
layer.msg("操作成功!", {icon: 1, time: 1000});
|
|
|
|
|
});
|
2018-08-03 04:18:42 +00:00
|
|
|
}
|
|
|
|
|
});
|
2018-08-03 01:31:41 +00:00
|
|
|
|
2018-08-03 04:18:42 +00:00
|
|
|
$("#batchEnabled").click(function () {
|
2019-04-14 07:09:15 +00:00
|
|
|
layer.confirm("确定要批量上架吗?", {skin: "layui-layer-lan", icon: 3, title: "提示", anim: 1}, function () {
|
|
|
|
|
var checkStatus = table.checkStatus("tableId");
|
2018-08-03 04:18:42 +00:00
|
|
|
var rows = checkStatus.data.length;
|
|
|
|
|
if (rows > 0) {
|
|
|
|
|
var idsStr = "";
|
|
|
|
|
for (var i = 0; i < checkStatus.data.length; i++) {
|
2019-04-14 07:09:15 +00:00
|
|
|
idsStr += checkStatus.data[i].id + ",";
|
2018-08-03 04:18:42 +00:00
|
|
|
}
|
|
|
|
|
console.log("选择的id-->" + idsStr);
|
|
|
|
|
layer.msg("操作成功!", {icon: 1, time: 1000}, function () {
|
|
|
|
|
$(".layui-laypage-btn")[0].click();
|
|
|
|
|
});
|
|
|
|
|
} else {
|
2019-05-12 08:15:57 +00:00
|
|
|
layer.msg("未选择有效数据", {offset: "t", anim: 6});
|
2018-08-03 04:18:42 +00:00
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
})
|
2018-08-03 01:31:41 +00:00
|
|
|
|
2018-08-03 04:18:42 +00:00
|
|
|
$("#batchDisabled").click(function () {
|
2019-04-14 07:09:15 +00:00
|
|
|
layer.confirm("确定要批量下架吗?", {skin: "layui-layer-lan", icon: 3, title: "提示", anim: 2}, function () {
|
|
|
|
|
var checkStatus = table.checkStatus("tableId");
|
2018-08-03 04:18:42 +00:00
|
|
|
var rows = checkStatus.data.length;
|
|
|
|
|
if (rows > 0) {
|
|
|
|
|
var idsStr = "";
|
|
|
|
|
for (var i = 0; i < checkStatus.data.length; i++) {
|
2019-04-14 07:09:15 +00:00
|
|
|
idsStr += checkStatus.data[i].id + ",";
|
2018-08-03 04:18:42 +00:00
|
|
|
}
|
|
|
|
|
console.log("选择的id-->" + idsStr);
|
|
|
|
|
layer.msg("操作成功!", {icon: 1, time: 1000}, function () {
|
|
|
|
|
$(".layui-laypage-btn")[0].click();
|
|
|
|
|
});
|
|
|
|
|
} else {
|
2019-05-12 08:15:57 +00:00
|
|
|
layer.msg("未选择有效数据", {offset: "t", anim: 6});
|
2018-08-03 04:18:42 +00:00
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
})
|
2018-08-03 01:31:41 +00:00
|
|
|
|
2018-08-03 04:18:42 +00:00
|
|
|
$("#batchDel").click(function () {
|
2019-04-14 07:09:15 +00:00
|
|
|
layer.confirm("确定要批量删除吗?", {skin: "layui-layer-lan", icon: 2, title: "提示", anim: 6}, function () {
|
|
|
|
|
var checkStatus = table.checkStatus("tableId");
|
2018-08-03 04:18:42 +00:00
|
|
|
var rows = checkStatus.data.length;
|
|
|
|
|
if (rows > 0) {
|
|
|
|
|
var idsStr = "";
|
|
|
|
|
for (var i = 0; i < checkStatus.data.length; i++) {
|
2019-04-14 07:09:15 +00:00
|
|
|
idsStr += checkStatus.data[i].id + ",";
|
2018-08-03 04:18:42 +00:00
|
|
|
}
|
|
|
|
|
console.log("选择的id-->" + idsStr);
|
|
|
|
|
layer.msg("操作成功!", {icon: 1, time: 1000}, function () {
|
|
|
|
|
$(".layui-laypage-btn")[0].click();
|
|
|
|
|
});
|
|
|
|
|
} else {
|
2019-05-12 08:15:57 +00:00
|
|
|
layer.msg("未选择有效数据", {offset: "t", anim: 6});
|
2018-08-03 04:18:42 +00:00
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
$("#addUser").click(function () {
|
|
|
|
|
layer.open({
|
2019-04-14 07:09:15 +00:00
|
|
|
title: "添加文章",
|
2018-08-03 04:18:42 +00:00
|
|
|
type: 2,
|
|
|
|
|
shade: false,
|
|
|
|
|
maxmin: true,
|
|
|
|
|
shade: 0.5,
|
|
|
|
|
anim: 4,
|
2019-04-14 07:09:15 +00:00
|
|
|
area: ["90%", "90%"],
|
|
|
|
|
content: "article-add.html",
|
2018-08-03 04:18:42 +00:00
|
|
|
zIndex: layer.zIndex,
|
|
|
|
|
// skin: 'layui-layer-molv',
|
|
|
|
|
end: function () {
|
|
|
|
|
$(".layui-laypage-btn")[0].click();
|
|
|
|
|
}
|
|
|
|
|
});
|
2018-07-25 15:06:06 +00:00
|
|
|
})
|
2018-08-03 04:18:42 +00:00
|
|
|
})
|
|
|
|
|
</script>
|
|
|
|
|
<!--模板-->
|
|
|
|
|
<script type="text/html" id="urlTpl">
|
|
|
|
|
<a href="{{d.url}}" target="_blank">{{d.url}}</a>
|
|
|
|
|
</script>
|
|
|
|
|
<script type="text/html" id="topTpl">
|
|
|
|
|
<input type="checkbox" name="isTop" value="{{d.isTop}}" lay-skin="switch" lay-text="是|否" {{ d.isTop== true ? 'checked' : ''}}>
|
|
|
|
|
</script>
|
|
|
|
|
<script type="text/html" id="statusTpl">
|
|
|
|
|
<input type="checkbox" name="top" value="{{d.status}}" lay-skin="switch" lay-text="上架|下架" {{ d.status== true ? 'checked' : ''}}>
|
|
|
|
|
</script>
|
|
|
|
|
<script type="text/html" id="operationTpl">
|
|
|
|
|
<a href="javascript:;" title="编辑" lay-event="edit"><i class="layui-icon"></i></a>
|
|
|
|
|
<a href="javascript:;" title="删除" lay-event="del"><i class="layui-icon"></i></a>
|
|
|
|
|
</script>
|
2018-07-25 15:06:06 +00:00
|
|
|
</body>
|
2019-02-14 14:43:38 +00:00
|
|
|
</html>
|