edit.html 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. {extend name="public/layout" /} {block name="title"}活动编辑{/block} {block name="body"}
  2. <style type="text/css">
  3. html {
  4. background: #fff;
  5. }
  6. body {
  7. min-width: 320px;
  8. }
  9. @media screen and (max-width: 450px) {
  10. .layui-form-item {
  11. width: 100%;
  12. }
  13. }
  14. #layuiadmin-app-form-list {
  15. padding: 1% 2%;
  16. }
  17. .layui-form-label {
  18. width: 20%;
  19. }
  20. .layui-input {
  21. border: none;
  22. outline: none;
  23. }
  24. .layui-input-inline-bottom {
  25. border-bottom: 1px solid #D4E4ED;
  26. }
  27. .flex-center {
  28. display: flex;
  29. align-items: center;
  30. }
  31. .border {
  32. border: 1px solid #D4E4ED;
  33. padding-right: 10px;
  34. border-radius: 5px;
  35. }
  36. .layui-form-radio>i:hover,
  37. .layui-form-radioed>i {
  38. color: #249EFB;
  39. }
  40. .layui-form-radioed {
  41. color: #249EFB;
  42. }
  43. .layui-tab-card>.layui-tab-title {
  44. background-color: #fff;
  45. }
  46. .layui-tab-card {
  47. border-radius: 10px;
  48. box-shadow: none;
  49. border: none;
  50. }
  51. .layui-form-label {
  52. color: #8A9AAA;
  53. }
  54. .layui-input::placeholder {
  55. color: #9DB6CF;
  56. }
  57. .layui-tab-card>.layui-tab-title .layui-this {
  58. background-color: #249EFB;
  59. color: #fff;
  60. }
  61. .layui-tab-card>.layui-tab-title .layui-this:after {
  62. border-bottom: none;
  63. border: none;
  64. }
  65. .layui-tab-card>.layui-tab-title li {
  66. background-color: #F2F2F2;
  67. margin: 0px 5px;
  68. }
  69. .layui-anim.layui-icon {
  70. font-size: 18px;
  71. }
  72. </style>
  73. <body>
  74. <form class="layui-form" id="admin" enctype="multipart/form-data">
  75. <div class="layui-form" lay-filter="layuiadmin-app-form-list" id="layuiadmin-app-form-list">
  76. <div class="layui-form-item">
  77. <div class="layui-tab layui-tab-card">
  78. <div class="layui-tab-content">
  79. <div class="layui-tab-item layui-show">
  80. <div class="layui-form-item">
  81. <label class="layui-form-label"><i style="color:red;">*&nbsp;</i>活动名称</label>
  82. <div class="layui-input-inline layui-input-inline-bottom" style="width: 380px;">
  83. <input type="text" id="activiteTitle" name="title" value="{$data.title}" lay-verify="required"
  84. placeholder="请输入活动名称" autocomplete="off" class="layui-input"
  85. style="max-width: 500px;">
  86. </div>
  87. </div>
  88. <div class="layui-form-item">
  89. <label class="layui-form-label"><i style="color:red;">*&nbsp;</i>活动时间</label>
  90. <div class="layui-input-inline flex-center border">
  91. <input type="text" name="start_date" id="start_date" value="{$data.start_date}" placeholder="选择活动开始日期"
  92. autocomplete="off" class="layui-input">
  93. <img src="__STATIC__/img/bg-calendar.png" alt="日历" width="14px" height="14px">
  94. </div>
  95. <div class="layui-form-mid">-</div>
  96. <div class="layui-input-inline flex-center border">
  97. <input type="text" name="end_date" id="end_date" value="{$data.end_date}" placeholder="选择活动结束日期"
  98. autocomplete="off" class="layui-input">
  99. <img src="__STATIC__/img/bg-calendar.png" alt="日历" width="14px" height="14px">
  100. </div>
  101. </div>
  102. <input type="hidden" value="{$data.id}" name="id">
  103. <input type="button" style="margin-left:24%;height:38px;" lay-submit
  104. class="layui-btn layui-btn-normal" lay-filter="activity-submit" id="activity-submit"
  105. value="确认">
  106. <button type="button"
  107. class="layui-btn layui-btn-primary layui-border-black plr20 cancel">取消</button>
  108. </div>
  109. </div>
  110. </div>
  111. </div>
  112. </div>
  113. </form>
  114. </body>
  115. {/block} {block name="js"}
  116. <script>
  117. layui.config({
  118. base: '__LAYUI__/',
  119. urlbase: '/sys'
  120. }).extend({
  121. index: 'lib/index' //主入口模块
  122. }).use(['index', 'form', 'upload', 'laydate'], function () {
  123. var form = layui.form,
  124. upload = layui.upload,
  125. laydate = layui.laydate,
  126. $ = layui.jquery,
  127. loadingIndex = null;
  128. form.render();
  129. /* 监听提交 */
  130. form.on('submit(activity-submit)', function (obj) {
  131. var index = parent.layer.getFrameIndex(window.name);
  132. var formData = new FormData(obj.form);
  133. let startDate = $("#start_date").val();
  134. let endDate = $("#end_date").val();
  135. if (!startDate || !endDate) {
  136. layer.msg('请选择活动开始时间和结束时间', {
  137. anim: 0
  138. ,time: 2000
  139. });
  140. return false;
  141. }
  142. if (startDate && endDate) {
  143. if (new Date(endDate).getTime() < new Date(startDate).getTime()) {
  144. layer.msg('结束日期不能小于开始日期', {
  145. anim: 0
  146. ,time: 2000
  147. });
  148. return false;
  149. }
  150. }
  151. loadingIndex = layer.load('Loading...', {
  152. shade: [0.6,'#000'] //0.1透明度的白色背景
  153. });
  154. $.ajax({
  155. url: '{:url("wechatActivity/save")}',
  156. type: 'post',
  157. data: formData,
  158. dataType: 'json',
  159. processData: false,
  160. contentType: false,
  161. success: function (res) {
  162. if (res.code === 0) {
  163. layer.close(loadingIndex);
  164. layer.msg(res.msg, {
  165. anim: 0
  166. , time: 2000
  167. }, function () {
  168. parent.layui.table.reload('company-activity'); //重载表格
  169. parent.layer.close(index); //再执行关闭
  170. });
  171. } else {
  172. layer.close(loadingIndex);
  173. layer.msg(res.msg, {
  174. anim: 6
  175. , time: 2000
  176. });
  177. }
  178. }
  179. });
  180. return false;
  181. });
  182. $('.cancel').click(function () {
  183. var index = parent.layer.getFrameIndex(window.name);
  184. parent.layer.close(index);
  185. })
  186. //日期范围
  187. laydate.render({
  188. elem: '#start_date',
  189. trigger: 'click'//呼出事件改成click
  190. });
  191. laydate.render({
  192. elem: '#end_date',
  193. trigger: 'click'//呼出事件改成click
  194. });
  195. });
  196. </script>
  197. {/block}