addLink.html 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title></title>
  6. <meta name="renderer" content="webkit">
  7. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  8. <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
  9. <link rel="stylesheet" href="../../static/css/font-awesome.min.css">
  10. <link rel="stylesheet" href="../../static/css/weadmin.css">
  11. <link rel="stylesheet" href="../../static/css/style.css">
  12. <!-- 让IE8/9支持媒体查询,从而兼容栅格 -->
  13. <!--[if lt IE 9]>
  14. <script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
  15. <script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
  16. <![endif]-->
  17. <style>
  18. html{
  19. overflow-y: auto;
  20. }
  21. .layui-form-label{
  22. width: 100px;
  23. }
  24. .layui-input-block{
  25. margin-left: 138px;
  26. }
  27. .w-e-toolbar{
  28. padding: 0 !important;
  29. }
  30. .w-e-toolbar .w-e-menu{
  31. padding: 5px 4px !important;
  32. }
  33. </style>
  34. </head>
  35. <body>
  36. <div class="weadmin-body">
  37. <form class="layui-form">
  38. <div class="layui-form-item">
  39. <label class="layui-form-label">
  40. 链接标题:
  41. </label>
  42. <div class="layui-input-block steta_grouds">
  43. <input type="text" placeholder="请输入链接标题" class="layui-input textName" lay-verify="required">
  44. </div>
  45. </div>
  46. <div class="layui-form-item">
  47. <label class="layui-form-label">链接备注:</label>
  48. <div class="layui-input-block">
  49. <textarea class="layui-textarea" placeholder="提醒内容" name="content" lay-verify="required" id="LAY_demo_editor" style="resize: none"></textarea>
  50. </div>
  51. </div>
  52. <div class="layui-form-item">
  53. <label class="layui-form-label">链接</label>
  54. <div class="layui-input-block">
  55. <a href="javascript:;" class="layui-btn layui-btn-normal addLink">添加其他链接</a>
  56. </div>
  57. <div class="layui-input-block" id="link_items">
  58. </div>
  59. </div>
  60. <div class="layui-form-item" style="text-align: center;padding-top: 50px">
  61. <button class="layui-btn" lay-submit lay-filter="linkBtn">提交</button>
  62. </div>
  63. </form>
  64. <span class="text" style="display: none"></span>
  65. </div>
  66. <script src="../../lib/layui/layui.js" charset="utf-8"></script>
  67. <script>
  68. layui.use(['form','layer','jquery','laydate'], function(){
  69. var form = layui.form,
  70. $ = layui.jquery,
  71. laydate= layui.laydate,
  72. layer = layui.layer;
  73. form.render();
  74. if (sessionStorage.getItem('QRcodeIDs') !=""){
  75. QRcodeLink(sessionStorage.getItem('QRcodeIDs'))
  76. }
  77. var num = 0,bums = 0,delateLinks = [];
  78. $("body").on('click','.addLink',function () {
  79. var mnum = bums++ +1;
  80. var str =`
  81. <div class="link_item" index-data="${mnum}">
  82. <input type="text" placeholder="链接名称" class="linkName" lay-verify="required" onblur="linkName(this.value,this.previousSibling.value)" oninput="parent.linkFun(this.value,${mnum})">
  83. <input type="text" placeholder="链接地址" class="linkUrl" lay-verify="linkverify" onblur="linkName(this.nextSibling.value,this.value),checkUrl(this)" oninput="parent.titleFun(this.value,${mnum})">
  84. <span class="operation">
  85. <i class="fa fa-long-arrow-up moveUp"></i>
  86. <i class="fa fa-long-arrow-down moveDown"></i>
  87. <i class="fa fa-trash-o deleteLink"></i>
  88. </span>
  89. </div>`;
  90. $("#link_items").append(str);
  91. parent.onFocus();
  92. parent.addlink(mnum)
  93. });
  94. $('body').on('click','.deleteLink',function () {
  95. var linkItemobj = {id:'',linkName:"",linkUrl:'',parentId:'',title:'',remark:'',zIndex:'',deleteFlag:""};
  96. $(this).parent().parent().remove();
  97. parent.onFocus();
  98. parent.deletaLink($(this).parent().parent().attr('index-data'));
  99. if ($(this).parent().parent().attr('link-id') != "") {
  100. linkItemobj = {};
  101. linkItemobj.title = $('.textName').val();
  102. linkItemobj.parentId = sessionStorage.getItem("QRcodeIDs");
  103. linkItemobj.linkName = $(this).parent().parent().find('.linkName').val();
  104. linkItemobj.linkUrl = $(this).parent().parent().find('.linkUrl').val();
  105. linkItemobj.remark = $('#LAY_demo_editor').val();
  106. linkItemobj.id = $(this).parent().parent().attr('link-id');
  107. linkItemobj.deleteFlag = true;
  108. linkItemobj.zIndex = num++ +1;
  109. delateLinks.push(linkItemobj)
  110. console.log(delateLinks,'delateImageatlas')
  111. }
  112. })
  113. // 上移
  114. $("body") .on("click",".moveUp",function () {
  115. var index = $(this).parent().parent();
  116. if(index.index() != 0){
  117. index.prev().before(index);
  118. }else {
  119. layer.msg('已经移至最高点', {icon: 8});
  120. }
  121. });
  122. // 下移
  123. $("body") .on("click",".moveDown",function () {
  124. var index = $(this).parent().parent();
  125. if(index.index() != $(".link_item").length-1){
  126. index.next().after(index);
  127. }else {
  128. layer.msg('已经移至最低点', {icon: 8});
  129. }
  130. });
  131. form.verify({
  132. linkverify: function(value, item){
  133. if(!new RegExp("(https|http)://[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]").test(value)){
  134. return '请输入合法的链接地址';
  135. }
  136. }
  137. });
  138. form.on('submit(linkBtn)', function(){
  139. var linkItemArray = [] , linkItem = $('.link_item');
  140. var linkItemobj = {id:'',linkName:"",linkUrl:'',parentId:'',title:'',remark:'',zIndex:'',deleteFlag:""};
  141. var num = 0;
  142. if (delateLinks != []) {
  143. for (var j = 0; j < delateLinks.length; j++) {
  144. linkItemArray.push(delateLinks[j])
  145. }
  146. }
  147. linkItem.each(function () {
  148. linkItemobj = {};
  149. linkItemobj.title = $('.textName').val();
  150. linkItemobj.parentId = sessionStorage.getItem("QRcodeIDs");
  151. linkItemobj.linkName = $(this).find('.linkName').val();
  152. linkItemobj.linkUrl = $(this).find('.linkUrl').val();
  153. linkItemobj.remark = $('#LAY_demo_editor').val();
  154. linkItemobj.id = $(this).attr('link-id');
  155. linkItemobj.deleteFlag = false;
  156. linkItemobj.zIndex = num++ +1;
  157. linkItemArray.push(linkItemobj)
  158. });
  159. $.ajax({
  160. url:'http://apptest.jieweizhineng.com/api/swagger/api/page/v1/updateLinks',
  161. type:'post',
  162. data:JSON.stringify(linkItemArray),
  163. contentType:'application/json;charset=utf-8',
  164. dataType:'json',
  165. success:function (res) {
  166. if (res.code === '200'){
  167. parent.onFocus();
  168. parent.pageRelationIdFun(res.data);
  169. layer.msg('链接修改成功');
  170. }else {
  171. layer.msg('链接修改失败,请检查信息');
  172. }
  173. },
  174. error:function () {
  175. layer.msg('网络错误,请检查网络');
  176. }
  177. });
  178. return false;
  179. });
  180. // QRcodeLink
  181. // 数据回显
  182. function QRcodeLink(id) {
  183. $.ajax({
  184. url: 'http://apptest.jieweizhineng.com/api/swagger/api/page/v1/getPageEdit/'+sessionStorage.getItem('QRcodeDetaileID'),
  185. type: 'get',
  186. dataType: 'json',
  187. success: function (res) {
  188. for (var i = 0; i < res.data.pageItemList.length; i++) {
  189. if (res.data.pageItemList[i].pageRelation.businessType == "LINKS" && res.data.pageItemList[i].pageRelation.businessId == id) {
  190. for (var j = 0; j < res.data.pageItemList[i].linksList.length; j++) {
  191. $('.textName').val(res.data.pageItemList[i].linksList[j].title);
  192. $('#LAY_demo_editor').val(res.data.pageItemList[i].linksList[j].remark);
  193. bums = j;
  194. var str =`
  195. <div class="link_item" index-data="${bums}" link-id="${res.data.pageItemList[i].linksList[j].id}">
  196. <input type="text" placeholder="链接名称" value="${res.data.pageItemList[i].linksList[j].linkName}" class="linkName" onblur="linkName(this.value,this.previousSibling.value)" oninput="parent.linkFun(this.value,${bums})" lay-verify="required">
  197. <input type="text" placeholder="链接地址" value="${res.data.pageItemList[i].linksList[j].linkUrl}" class="linkUrl" onblur="linkName(this.nextSibling.value,this.value),checkUrl(this)" oninput="parent.titleFun(this.value,${bums})" lay-verify="linkverify">
  198. <span class="operation">
  199. <i class="fa fa-long-arrow-up moveUp"></i>
  200. <i class="fa fa-long-arrow-down moveDown"></i>
  201. <i class="fa fa-trash-o deleteLink"></i>
  202. </span>
  203. </div>`;
  204. $("#link_items").append(str);
  205. }
  206. }
  207. }
  208. },
  209. error:function () {
  210. layer.msg('请检查网络', {icon: 2});
  211. }
  212. });
  213. }
  214. });
  215. </script>
  216. </body>
  217. </html>