edit_adv.html 3.5 KB

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