lst.html 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277
  1. <!--加载公共头部文件-->
  2. {include file='Base/top'}
  3. <!--加载公共左侧文件-->
  4. {include file='Base/left'}
  5. <!--加载公共底部文件-->
  6. {include file='Base/fotter'}
  7. <!-- 内容显示部分 -->
  8. <div class="layui-body">
  9. <!--面包屑导航-->
  10. <blockquote class="layui-elem-quote">
  11. <span class="layui-breadcrumb" style="visibility: visible;">
  12. <a >文章管理</a>
  13. <span lay-separator="">/</span>
  14. <a href="{:url('Article/lst')}">
  15. <cite>文章列表</cite>
  16. </a>
  17. </span>
  18. </blockquote>
  19. <!--面包屑导航 结束-->
  20. <div class="layui-row layui-col-space10" style="margin:0 10px;">
  21. <div class="search" style="margin:10px 0px 5px -5px;"><!-- 搜索 -->
  22. <div class="layui-inline">
  23. <input type="text" class="layui-input" name="title" id="refund" autocomplete="off" placeholder="请输入文章标题">
  24. </div>
  25. <button class="layui-btn layui-btn-primary" data-type="reload">
  26. <i class="layui-icon"></i>搜索
  27. </button>
  28. </div>
  29. <table class="layui-hide" id="list" lay-filter="list"></table><!-- 表格数据 -->
  30. </div>
  31. </div>
  32. <script type="text/html" id="state">
  33. {{# if(d.state == 0){ }}
  34. <div class="layui-badge layui-bg-green">推荐</div>
  35. {{# } else if(d.state == 1){ }}
  36. <div class="layui-badge layui-bg-read">不推荐</div>
  37. {{# } }}
  38. </script>
  39. <!-- 表格操作栏模块 -->
  40. <script type="text/html" id="barDemo"><!-- 表格自定义操作按钮 -->
  41. <a class="layui-btn layui-btn-xs" lay-event="edit">
  42. <i class="layui-icon">&#xe642;</i>编辑
  43. </a>
  44. <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">
  45. <i class="layui-icon">&#xe640;</i>删除
  46. </a>
  47. </script>
  48. <!-- 头部工具栏模块 -->
  49. <script type="text/html" id="toolbarDemo"><!-- 表格自定义操作按钮 -->
  50. <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="add">
  51. <i class="layui-icon">&#xe654;</i>添加
  52. </a>
  53. <div class="layui-btn-group demoTable">
  54. <button class="layui-btn layui-btn-danger layui-btn-xs" data-type="pdel">
  55. <i class="layui-icon">&#xe640;</i>批量删除
  56. </button>
  57. </div>
  58. </script>
  59. <!-- 图片显示 -->
  60. <script type="text/html" id="pics">
  61. {{# if(d.pic == null){ }}
  62. 暂无图片~~~
  63. {{# }else{ }}
  64. <img src="__UPLOAD__/{{d.pic}}" width="50" height="100%">
  65. {{# } }}
  66. </script>
  67. <script>
  68. layui.use(['table','layer','laypage','jquery'], function(){
  69. var table = layui.table,
  70. layer = layui.layer,
  71. laypage = layui.laypage,
  72. $ = layui.jquery;
  73. //数据表格
  74. table.render({
  75. elem: '#list'
  76. ,id:'idSystem'
  77. ,url:'{:url("lst_data")}'//数据接口(专门处理数据)
  78. ,height:'full'
  79. // ,toolbar: 'default' //开启工具栏,此处显示默认图标,可以自定义模板,详见文档
  80. ,toolbar: '#toolbarDemo'
  81. //分页
  82. ,page: { //支持传入 laypage 组件的所有参数(某些参数除外,如:jump/elem) - 详见文档
  83. layout: ['limit', 'count', 'prev', 'page', 'next', 'skip'] //自定义分页布局
  84. ,curr: 1 //设定初始在第 5 页
  85. ,limit:10 //一页显示多少条
  86. ,limits:[10,15,25]//每页条数的选择项
  87. ,groups: 3 //只显示 2 个连续页码
  88. ,first: "首页" //不显示首页
  89. ,last: "尾页" //不显示尾页
  90. }
  91. ,cols: [[
  92. {type: 'checkbox', fixed: 'left'}
  93. ,{field: 'id', title: '文章ID',sort:true, align:'center',width: 100}
  94. ,{field: 'title', title: '文章标题',align:'left', width: 400}
  95. ,{field: 'author', title: '文章作者',align:'center', width: 140}
  96. ,{field: 'catename', title: '所属栏目',align:'center', width: 140 }
  97. ,{field: 'state', title: '是否推荐',align:'center', width: 90,templet: '#state'}
  98. ,{field: 'pic', title: '文章图片',align:'center', width: 200,templet: '#pics'}
  99. ,{field: 'time', title: '发布时间',align:'center', width: 180}
  100. ,{field:'actions',title: '操作',toolbar: '#barDemo',align:'left',width:300 ,fixed:'right'}
  101. ]]
  102. });
  103. // 执行搜索,表格重载
  104. $('.search .layui-btn-primary').on('click',function () {
  105. // 搜索条件
  106. var title = $('#refund').val();
  107. if(title==''){
  108. layer.msg('搜索条件不能为空');
  109. return false;
  110. }
  111. table.reload('idSystem', {
  112. page: {
  113. curr: 1
  114. }
  115. ,where: {
  116. title: title
  117. }
  118. });
  119. });
  120. //监听头工具栏事件
  121. table.on('toolbar(list)', function(obj){
  122. var checkStatus = table.checkStatus(obj.config.id)
  123. ,data = checkStatus.data; //获取选中的数据
  124. switch(obj.event){
  125. case 'add'://添加
  126. var index = layer.open({
  127. type:2,
  128. title:"添加文章列表",
  129. maxmin:true,
  130. width:'auto',
  131. offset : '100px',
  132. area :['1300px','700px'],
  133. content:"{:url('Article/add')}"
  134. });
  135. break;
  136. };
  137. });
  138. //监听行工具事件
  139. table.on('tool(list)', function(obj){ //注:tool是工具条事件名,test是table原始容器的属性 lay-filter="对应的值"
  140. var data = obj.data; //获得当前行数据
  141. var layEvent = obj.event; //获得 lay-event 对应的值
  142. var tr = obj.tr; //获得当前行 tr 的DOM对象
  143. switch(layEvent){
  144. case 'edit'://编辑
  145. var index = layer.open({
  146. type:2,
  147. title:"编辑信息",
  148. maxmin:true,
  149. width:'auto',
  150. offset : '100px',
  151. area :['1300px','700px'],
  152. content:"{:url('Article/edit')}?id="+data.id
  153. });
  154. break;
  155. case 'del'://删除
  156. layer.confirm('确定要删除吗?',{icon: 5},function(index){
  157. $.post("{:url('Article/del')}?id="+data.id,function(res){
  158. if(res == 1){
  159. obj.del();
  160. layer.msg('删除成功!');
  161. }else{
  162. layer.msg('删除失败!');
  163. }
  164. })
  165. });
  166. break;
  167. };
  168. });
  169. //批量删除————————————————————————————————————————
  170. var $ = layui.$, active = {
  171. pdel: function(){ //获取选中数据
  172. var checkStatus = table.checkStatus('idSystem')
  173. ,data = checkStatus.data;
  174. if(data==""){
  175. layer.msg('请选择需要删除的数据',{icon:2});
  176. return;
  177. }
  178. var ids = [];
  179. if(data.length>0){
  180. for(var i=0;i<data.length;i++){
  181. ids+=data[i].id+",";
  182. }
  183. }
  184. layer.confirm('确定要删除id为'+ids+'的用户信息吗?',function(index){
  185. $.ajax({
  186. type:'POST',
  187. url:'{:url("Article/pdel")}',
  188. data:{"ids":ids},
  189. success:function(data){
  190. if(data==1){
  191. // layer.msg('删除成功',{icon:1});
  192. layer.msg('批量删除成功',{icon:1},function () {
  193. var index = parent.layer.getFrameIndex(window.name);// 获得frame索引
  194. parent.layer.close(index);//关闭当前frame
  195. parent.layui.table.reload('idSystem');//成功刷新父窗口的 table
  196. });
  197. }else{
  198. layer.msg('批量删除失败!',{icon:2});
  199. }
  200. }
  201. })
  202. })
  203. }
  204. }
  205. $('.demoTable .layui-btn-xs').on('click', function(){
  206. var type = $(this).data('type');
  207. active[type] ? active[type].call(this) : '';
  208. });
  209. //批量删除结束————————————————————————————————————————————————————
  210. });
  211. </script>