설명 없음
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

select.html 3.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. {extend name="admin@index_layout"/}
  2. {block name="main"}
  3. <table class="layui-hide" id="dataTable" lay-filter="dataTable"></table>
  4. <script type="text/html" id="barTool">
  5. <a data-href='{{d.path}}' class="layui-btn layui-btn-danger layui-btn-xs btn-chooseone"><i class="iconfont icon-right"></i> 选择</a>
  6. </script>
  7. <script type="text/html" id="picTpl">
  8. {{# if(d.mime.indexOf("image") > -1){ }}
  9. <img style="max-width:80px; max-height:30px;" src="{{d.path}}" data-image="{{d.name}}">
  10. {{# } else { }}
  11. <img style="max-width:80px; max-height:30px;" src="{:url('admin/ajax/icon')}?suffix={{d.ext}}">
  12. {{# } }}
  13. </script>
  14. {/block}
  15. {block name="script"}
  16. <script>
  17. layui.use(['yznTable','yzn','table','yznForm','yznUpload'], function() {
  18. var yznTable = layui.yznTable,
  19. yzn = layui.yzn,
  20. yznForm = layui.yznForm,
  21. yznUpload = layui.yznUpload,
  22. table =layui.table;
  23. var multiple = {$Think.get.multiple};
  24. var urlArr = [];
  25. var init = {};
  26. yznTable.render({
  27. init: init,
  28. id: 'dataTable',
  29. toolbar: ['refresh'
  30. , [{
  31. html: '<button type="button" class="layui-btn layui-btn-sm faupload" data-multiple="false" data-type="{$mimetype}"><i class="layui-icon layui-icon-upload"></i> 上传</button>'
  32. }]
  33. {if $Think.get.multiple == "true"}
  34. , [{
  35. html: '<a class="layui-btn layui-btn-danger layui-btn-sm btn-choose-multi"><i class="iconfont icon-right"></i> 选择</a>'
  36. }]
  37. {/if}
  38. ],
  39. elem: '#dataTable',
  40. url: '{:url("index")}',
  41. cols: [
  42. [
  43. {if $Think.get.multiple == "true"}
  44. { type: 'checkbox', fixed: 'left' },
  45. {/if}
  46. { field: 'id', width: 60, title: 'ID', sort: true },
  47. { field: 'name', title: '名称' },
  48. { field: 'path', width: 100, align: "center", title: '图片', search: false, templet: '#picTpl' },
  49. { field: 'size', width: 100, title: '大小', sort: true },
  50. { field: 'mime', width: 120, title: 'Mime类型' },
  51. { field: 'create_time', width: 160, title: '上传时间', search: 'range' },
  52. { fixed: 'right', width: 85, title: '操作', toolbar: '#barTool' }
  53. ]
  54. ],
  55. page: {},
  56. done: function(res, curr, count){
  57. yznUpload.api.upload('.faupload', function () {
  58. $("[data-table-refresh]").trigger("click");
  59. });
  60. }
  61. });
  62. yznTable.bindevent();
  63. table.on('checkbox(dataTable_LayFilter)', function(obj){
  64. urlArr = [];
  65. var checkStatus = table.checkStatus('dataTable').data;
  66. for (var i = 0; i < checkStatus.length; i++) {
  67. urlArr.push(checkStatus[i]['path']);
  68. }
  69. });
  70. //选择单个
  71. $(document).on('click', '.btn-chooseone', function() {
  72. var that = $(this),
  73. index = that.parents('tr').eq(0).data('index'),
  74. tr = $('.layui-table-body').find('tr[data-index="' + index + '"]'),
  75. href = !that.attr('data-href') ? that.attr('href') : that.attr('data-href');
  76. yzn.close({ url: href, multiple: multiple});
  77. });
  78. // 选中多个 todo翻页失效
  79. $(document).on("click", ".btn-choose-multi", function () {
  80. yzn.close({ url: urlArr.join(","), multiple: multiple});
  81. });
  82. });
  83. </script>
  84. {/block}