class_choice_course.html 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. {extend name="public/layout"/} {block name="title"}课件筛选列表{/block} {block name="body"}
  2. <style type="text/css">
  3. html,
  4. body {
  5. display: block;
  6. background-color: #fff;
  7. }
  8. .layui-table thead tr,
  9. .layui-table-header {
  10. background-color: #D8E6F1 !important;
  11. }
  12. .layui-fluid {
  13. display: block;
  14. border-radius: 5px;
  15. background-color: #ffffff;
  16. padding: 15px 30px;
  17. }
  18. .layui-tab {
  19. padding: 15px;
  20. height: 100%;
  21. }
  22. .layui-form-item {
  23. width: 100%;
  24. }
  25. </style>
  26. <div class="layui-fluid">
  27. <div class="layui-card">
  28. <div class="layui-form layui-card-header layuiadmin-card-header-auto">
  29. <div class="layui-form-item">
  30. <div>
  31. <div class="layui-inline">
  32. <div class="layui-input-inline">
  33. <select name="type" lay-filter="slt" class="type">
  34. <option value="">全部</option>
  35. <option value="order">顺序学习</option>
  36. <option value="free">自由学习</option>
  37. </select>
  38. </div>
  39. </div>
  40. <div class="layui-inline">
  41. <div class="layui-input-inline">
  42. <select name="category" lay-filter="slt" class="category">
  43. <option value="">全部</option>
  44. <option value="compulsory">必修</option>
  45. <option value="elective">选修</option>
  46. </select>
  47. </div>
  48. </div>
  49. <div class="layui-inline">
  50. <div class="layui-input-inline">
  51. <input type="text" name="keyword" placeholder="请输入课程名称搜索" autocomplete="off"
  52. class="layui-input keyword">
  53. </div>
  54. </div>
  55. <div class="layui-inline">
  56. <button class="layui-btn layuiadmin-btn" lay-submit lay-filter="LAY-app-contlist-search">
  57. <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
  58. </button>
  59. </div>
  60. </div>
  61. </div>
  62. </div>
  63. <div class="layui-card-body">
  64. <table lay-filter="checkCourseList" id="checkCourseList"></table>
  65. <input type="hidden" name="course_id" id="course_id" value="" />
  66. </div>
  67. <input type="hidden" id="hiddentext" />
  68. </div>
  69. </div>
  70. {/block} {block name="js"}
  71. <script>
  72. layui.config({
  73. base: '__LAYUI__/',
  74. urlbase: '/sys'
  75. }).extend({
  76. index: 'lib/index'
  77. }).use(['index', 'table', 'layedit', 'element'], function () {
  78. var $ = layui.$,
  79. table = layui.table,
  80. element = layui.element,
  81. form = layui.form;
  82. var field = {camp_id: "{$camp_id}",taskIds: "{$taskIds}"};
  83. form.on('submit(LAY-app-contlist-search)', function (data) {
  84. var type = $('.type').val();
  85. var category = $('.category').val();
  86. var keyword = $('.keyword').val();
  87. field['type'] = type;
  88. field['category'] = category;
  89. field['keyword'] = keyword;
  90. //执行重载
  91. table.reload('checkCourseList', {
  92. where: field,
  93. page: {
  94. curr: 1
  95. }
  96. });
  97. });
  98. table.on('checkbox(checkCourseList)', function (obj) {
  99. var text = $('#hiddentext').val() ? JSON.parse($('#hiddentext').val()) : {};
  100. var checkStatus = table.checkStatus('checkCourseList');
  101. var checkboxlist = checkStatus.data;
  102. checkboxlist.forEach(function (item, index) {
  103. text[item.id] = item.title;
  104. })
  105. $('#hiddentext').val(JSON.stringify(checkboxlist));
  106. });
  107. table.render({
  108. elem: '#checkCourseList',
  109. url: "{:url('camp/train_class')}",
  110. where: field,
  111. cols: [
  112. [{
  113. checkbox: true,
  114. fixed: true
  115. },
  116. {
  117. type: 'numbers',
  118. field: 'id',
  119. title: '序号'
  120. },
  121. {
  122. field: 'title',
  123. title: '课程名称'
  124. },
  125. {
  126. field: 'des',
  127. title: '描述'
  128. }
  129. ]
  130. ],
  131. page: true,
  132. limit: 10,
  133. height: 'full-130'
  134. });
  135. });
  136. </script>
  137. {/block}