edit_adv.html 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. {extend name="base"/}
  2. {block name="resources"}
  3. <style>
  4. .adv-url-show{margin-right: 10px;}
  5. .ns-form {margin-top: 0;}
  6. </style>
  7. {/block}
  8. {block name="main"}
  9. <div class="layui-form ns-form">
  10. <div class="layui-form-item">
  11. <label class="layui-form-label img-upload-lable">轮播图:</label>
  12. <div class="layui-input-inline img-upload">
  13. <input type="hidden" class="layui-input" name="show_image" value="{$adv_info.imgae}" />
  14. <div class="upload-img-block icon">
  15. <div class="upload-img-box" id="show_image">
  16. {if condition="$adv_info.imgaw"}
  17. <img src="{:img($adv_info.imgae)}" />
  18. {else/}
  19. <div class="ns-upload-default">
  20. <img src="__STATIC__/img/upload_img.png" />
  21. <p>点击上传</p>
  22. </div>
  23. {/if}
  24. </div>
  25. </div>
  26. </div>
  27. </div>
  28. <div class="ns-form-row">
  29. <button class="layui-btn ns-bg-color" lay-submit lay-filter="save">保存</button>
  30. <button class="layui-btn layui-btn-primary" onclick="back()">返回</button>
  31. </div>
  32. <input type="hidden" name="ap_id" value="{$adv_info.id}" />
  33. </div>
  34. {/block}
  35. {block name="script"}
  36. <script>
  37. var color = $("#background").val();
  38. var adv_url_json = $("input[name='show_image']").val();
  39. layui.use(['form', 'upload', 'colorpicker'], function () {
  40. var form = layui.form,
  41. upload = layui.upload,
  42. colorpicker = layui.colorpicker,
  43. repeat_flag = false; //防重复标识
  44. form.render();
  45. /**
  46. * 颜色
  47. */
  48. colorpicker.render({
  49. elem: '#bg_color', //绑定元素
  50. color: color,
  51. done: function(color) {
  52. $(".tdrag-name").css("color", color);
  53. $("#background").val(color);
  54. }
  55. });
  56. /**
  57. * 广告图片
  58. */
  59. var uploadInst = upload.render({
  60. elem: '#show_image',
  61. url: ns.url("admin/upload/upload"),
  62. done: function(res) {
  63. if (res.code >= 0) {
  64. $("input[name='show_image']").val(res.data.pic_path);
  65. $("#show_image").html("<img src=" + ns.img(res.data.pic_path) + " >");
  66. }
  67. return layer.msg(res.message);
  68. }
  69. });
  70. /**
  71. * 监听提交
  72. */
  73. form.on('submit(save)', function(data) {
  74. if (repeat_flag) return;
  75. repeat_flag = true;
  76. $.ajax({
  77. url: ns.url("admin/banner/editAdv"),
  78. data: data.field,
  79. dataType: 'JSON',
  80. type: 'POST',
  81. success: function(res) {
  82. repeat_flag = false;
  83. if (res.code == 0) {
  84. layer.confirm('编辑成功', {
  85. title:'操作提示',
  86. btn: ['返回列表', '继续操作'],
  87. yes: function() {
  88. location.href = ns.url("admin/banner/index")
  89. },
  90. btn2: function() {
  91. location.reload();
  92. }
  93. });
  94. } else {
  95. layer.msg(res.message);
  96. }
  97. }
  98. });
  99. });
  100. /**
  101. * 表单验证
  102. */
  103. form.verify({
  104. num: function (value) {
  105. if (value == '') {
  106. return;
  107. }
  108. if (value%1 != 0) {
  109. return '排序数值必须为整数';
  110. }
  111. if (value < 0) {
  112. return '排序数值必须为大于0';
  113. }
  114. },
  115. flo: function (value) {
  116. if (value == '') {
  117. return;
  118. }
  119. var reg = /^(0|[1-9]\d*)(\s|$|\.\d{1,2}\b)/;
  120. if (!reg.test(value)) {
  121. return '价格不能小于0,可保留两位小数!'
  122. }
  123. }
  124. });
  125. });
  126. function back() {
  127. location.href = ns.url("admin/adv/lists")
  128. }
  129. function selectedLink() {
  130. ns.select_link(adv_url_json, '', function (data) {
  131. for (var o in data) {
  132. if (data[o] == null) delete data[o];
  133. }
  134. $("input[name='show_image']").val(JSON.stringify(data));
  135. $(".adv-url-show").text(data.title);
  136. }, 'admin/diy/link');
  137. }
  138. </script>
  139. {/block}