deco_post_edit.html 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. {extend name="public/layout" /} {block name="title"}添加{/block} {block name="body"}
  2. <style type="text/css">
  3. html{
  4. background: #fff;
  5. }
  6. </style>
  7. <body>
  8. <form class="layui-form" lay-filter="layuiadmin-app-form-list" id="layuiadmin-app-form-list" style="padding: 20px 30px 0 0;">
  9. <div class="layui-form-item">
  10. <label class="layui-form-label">封面图</label>
  11. <div class="layui-input-inline" id="upload-drag">
  12. <img src="{:$thepost['cover']}?x-oss-process=image/resize,l_200" >
  13. </div>
  14. </div>
  15. <div class="layui-form-item">
  16. <label class="layui-form-label">类型</label>
  17. <div class="layui-input-inline" style="width: auto">
  18. <select id="firstnode" lay-filter="firstnode">
  19. <option value="">--请选择--</option>
  20. {foreach $finalArr as $key => $val}
  21. <option value="{:$key}">{:$key}</option>
  22. {/foreach}
  23. </select>
  24. <select id="childnode" lay-filter="childnode">
  25. </select>
  26. <select id="endnode" lay-filter="endnode" >
  27. </select>
  28. </div>
  29. </div>
  30. <div class="layui-form-item">
  31. <label class="layui-form-label">简介</label>
  32. <div class="layui-input-block">
  33. <input class="layui-input" id="desc" name="desc" autocomplete="off" placeholder="简介,如:根据实际情况选择全包、半包、软装" value="{:$thepost['desc']}"/>
  34. </div>
  35. </div>
  36. <div class="layui-form-item">
  37. <label class="layui-form-label">内容</label>
  38. <div class="layui-input-block">
  39. <textarea id="textarea" name="content" style="width: 460px; height: 300px;" autocomplete="off">{:$thepost['content']}</textarea>
  40. </div>
  41. </div>
  42. <div class="layui-form-item layui-hide">
  43. <input type="button" lay-submit lay-filter="layuiadmin-app-form-edit-submit" id="layuiadmin-app-form-edit-submit" value="确认添加">
  44. <!-- <input type="button" lay-submit lay-filter="layuiadmin-app-form-edit" id="layuiadmin-app-form-edit" value="确认编辑">-->
  45. </div>
  46. </form>
  47. </body>
  48. {/block} {block name="js"}
  49. <script>
  50. layui.config({
  51. base: '__LAYUI__/' //静态资源所在路径
  52. ,
  53. urlbase: '/sys'
  54. }).extend({
  55. index: 'lib/index' //主入口模块
  56. }).use(['index', 'form','upload','layedit'], function() {
  57. var form = layui.form,
  58. upload = layui.upload,
  59. layedit = layui.layedit,
  60. $ = layui.jquery;
  61. var finalstr = '{:$finalStr}';
  62. var finalarr = JSON.parse(finalstr);
  63. $('#firstnode').val('{:$select_top}');
  64. //
  65. $('#childnode').html('');
  66. $('#childnode').append('<option value="">--请选择--</option>');
  67. $.each(finalarr['{:$select_top}'],function (key, val) {
  68. $('#childnode').append('<option value="'+key+'_{:$select_top}">'+key+'</option>');
  69. });
  70. $('#endnode').html('');
  71. $('#endnode').append('<option value="">--请选择--</option>');
  72. $.each(finalarr['{:$select_top}']['{:$select_middle}'],function (key, val) {
  73. $('#endnode').append('<option value="'+val+'_{:$select_child}">'+val+'</option>');
  74. })
  75. $('#childnode').val('{:$select_child}');
  76. $('#endnode').val('{:$select_endor}');
  77. form.render();
  78. /* 监听提交 */
  79. form.on('submit(layuiadmin-app-form-edit-submit)', function(obj) {
  80. var index = parent.layer.getFrameIndex(window.name);
  81. var formData = new FormData(obj.form);
  82. formData.set('content', layedit.getContent(textarea));
  83. formData.set('endpoint', endStr);
  84. formData.set('id', '{:$thepost["id"]}');
  85. $.ajax({
  86. url:'{:url("tool/decoPostSave")}',
  87. type: 'post',
  88. data: formData,
  89. dataType: 'json',
  90. processData: false,
  91. contentType: false,
  92. success: function (res) {
  93. if (res.code === 0) {
  94. layer.msg(res.msg, {anim: 0}, function () {
  95. parent.layui.table.reload('decohelper-table'); //重载表格
  96. parent.layer.close(index); //再执行关闭
  97. });
  98. } else {
  99. layer.msg(res.msg, {anim: 6});
  100. }
  101. }
  102. });
  103. return false;
  104. });
  105. form.on('select(firstnode)', function (obj) {
  106. console.log(obj.value);
  107. console.log(finalarr[obj.value]);
  108. //var htmlstr = '';
  109. $('#childnode').html('');
  110. $('#childnode').append('<option value="">--请选择--</option>');
  111. $.each(finalarr[obj.value],function (key, val) {
  112. $('#childnode').append('<option value="'+key+'_'+obj.value+'">'+key+'</option>');
  113. })
  114. form.render();
  115. });
  116. form.on('select(childnode)', function (obj) {
  117. console.log(obj.value);
  118. var thestr = obj.value;
  119. var itemarr = thestr.split('_');
  120. console.log(itemarr);
  121. $('#endnode').html('');
  122. $('#endnode').append('<option value="">--请选择--</option>');
  123. $.each(finalarr[itemarr[1]][itemarr[0]],function (key, val) {
  124. $('#endnode').append('<option value="'+val+'_'+itemarr[0]+'_'+itemarr[1]+'">'+val+'</option>');
  125. })
  126. form.render();
  127. });
  128. //var endArr = [];
  129. var endStr = '{$thepost.typepath}';
  130. form.on('select(endnode)', function (obj) {
  131. console.log(obj.value);
  132. endStr = obj.value;
  133. });
  134. //拖拽上传
  135. upload.render({
  136. elem: '#upload-drag',
  137. accept: 'image',
  138. exts: 'jpg|png|bmp|jpeg|JPG|PNG|BMP|JPEG',
  139. auto: false,
  140. field: 'img',
  141. size: 1 * 1024,
  142. choose: function(obj) {
  143. obj.preview(function(index, file, result) {
  144. $('#upload-drag').html('<img src="' + result + '" style="height: 100%;width:100%;">');
  145. });
  146. }
  147. });
  148. var textarea = layedit.build('textarea', {
  149. height: 400,
  150. uploadImage: {
  151. url: '{:url("tool/imgUpload")}',
  152. type: 'post'
  153. }
  154. });
  155. });
  156. </script>
  157. {/block}