add_external_message.html 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752
  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-item {
  18. position: relative;
  19. }
  20. .layui-form-label {
  21. width: 20%;
  22. }
  23. .layui-input {
  24. border: none;
  25. outline: none;
  26. }
  27. .layui-input-inline-bottom {
  28. border-bottom: 1px solid #D4E4ED;
  29. }
  30. .flex-center {
  31. display: flex;
  32. align-items: center;
  33. }
  34. .border {
  35. border: 1px solid #D4E4ED;
  36. padding-right: 10px;
  37. border-radius: 5px;
  38. }
  39. .layui-form-radio>i:hover,
  40. .layui-form-radioed>i {
  41. color: #249EFB;
  42. }
  43. .layui-form-radioed {
  44. color: #249EFB;
  45. }
  46. .layui-tab-card>.layui-tab-title {
  47. background-color: #fff;
  48. }
  49. .layui-tab-card {
  50. border-radius: 10px;
  51. box-shadow: none;
  52. border: none;
  53. }
  54. .layui-form-label {
  55. color: #8A9AAA;
  56. }
  57. .layui-input::placeholder {
  58. color: #9DB6CF;
  59. }
  60. .layui-tab-card>.layui-tab-title .layui-this {
  61. background-color: #249EFB;
  62. color: #fff;
  63. }
  64. .layui-tab-card>.layui-tab-title .layui-this:after {
  65. border-bottom: none;
  66. border: none;
  67. }
  68. .layui-tab-card>.layui-tab-title li {
  69. background-color: #F2F2F2;
  70. margin: 0px 5px;
  71. }
  72. .layui-anim.layui-icon {
  73. font-size: 18px;
  74. }
  75. .imgs {
  76. width: 89%;
  77. float: left;
  78. margin-top: -1%;
  79. margin-left: -1%;
  80. }
  81. .upload {
  82. background-color: #fff;
  83. /*position: absolute;*/
  84. bottom: 10px;
  85. /*right: 9%;*/
  86. cursor: pointer;
  87. z-index: 1;
  88. padding: 10px 5px 0px;
  89. }
  90. .cancel,
  91. .cancel:hover {
  92. background-color: #fff;
  93. color: #249EFB;
  94. border: 1px solid #249EFB;
  95. padding: 0px 20px;
  96. }
  97. .imageDiv {
  98. display: inline-block;
  99. width: 140px;
  100. height: 125px;
  101. -webkit-box-sizing: border-box;
  102. -moz-box-sizing: border-box;
  103. box-sizing: border-box;
  104. border: 1px dashed darkgray;
  105. background: #f8f8f8;
  106. position: relative;
  107. overflow: hidden;
  108. margin-right: 10px;
  109. }
  110. .imageDiv div {
  111. width: 100%;
  112. height: 100%;
  113. position: absolute;
  114. top: 0px;
  115. background-color: #e6e6e600;
  116. }
  117. .imageDiv div i {
  118. display: none;
  119. font-size: 31px;
  120. position: absolute;
  121. top: 37%;
  122. left: 45%;
  123. }
  124. .imageDiv div:hover {
  125. background-color: #e6e6e680;
  126. }
  127. .imageDiv div:hover i {
  128. display: block;
  129. cursor: pointer;
  130. }
  131. .font15 {
  132. font-size: 14px !important;
  133. margin-left: 5px;
  134. }
  135. .mt10 {
  136. margin-top: 10px !important;
  137. }
  138. .mask {
  139. width:100%;
  140. height: 100%;
  141. background-color: rgba(0,0,0,0.5);
  142. position: fixed;
  143. top: 0px;
  144. bottom: 0px;
  145. left: 0px;
  146. right: 0px;
  147. z-index: 999999 !important;
  148. display: flex;
  149. justify-content: center;
  150. align-items: center;
  151. }
  152. #range_people {
  153. width: 550px !important;
  154. height: 35px;
  155. border: 1px solid #CCCCCC;
  156. display: flex;
  157. align-items: center;
  158. box-sizing: border-box;
  159. padding: 0px 10px;
  160. }
  161. .mask-content {
  162. width: 90%;
  163. height: 90%;
  164. background-color: #fff;
  165. display: flex;
  166. flex-direction: column;
  167. }
  168. .header-nav {
  169. background-color: #D8E6F1;
  170. width: 100%;
  171. height: 45px;
  172. display: flex;
  173. justify-content: space-between;
  174. align-items: center;
  175. padding: 0px 20px;
  176. box-sizing: border-box;
  177. color: #333333;
  178. }
  179. .list-content {
  180. flex: 1;
  181. display: flex;
  182. overflow: hidden;
  183. }
  184. .first-box {
  185. flex: 1;
  186. display: flex;
  187. flex-direction: column;
  188. }
  189. .first-content {
  190. padding: 10px 20px;
  191. box-sizing: border-box;
  192. overflow: auto;
  193. }
  194. /* 设置滚动条的样式 */
  195. .first-content::-webkit-scrollbar {
  196. width:10px;
  197. }
  198. /* 滚动槽 */
  199. .first-content::-webkit-scrollbar-track {
  200. -webkit-box-shadow:inset006pxrgba(0,0,0,0.3);
  201. }
  202. /* 滚动条滑块 */
  203. .first-content::-webkit-scrollbar-thumb {
  204. background: #666666;
  205. -webkit-box-shadow:inset006pxrgba(0,0,0,0.5);
  206. }
  207. .first-content::-webkit-scrollbar-thumb:window-inactive {
  208. background:#333;
  209. }
  210. .first-page {
  211. width: 100%;
  212. height: 50px;
  213. display: flex;
  214. justify-content: space-between;
  215. align-items: center;
  216. padding: 5px 20px;
  217. box-sizing: border-box;
  218. }
  219. .item {
  220. height: 40px;
  221. border-bottom: 1px solid #ECECEC;
  222. display: flex;
  223. align-items: center;
  224. }
  225. .second-box {
  226. flex: 1;
  227. overflow: auto;
  228. padding: 10px 20px;
  229. box-sizing: border-box;
  230. border-left: 1px solid #f5f5f5;
  231. }
  232. /* 设置滚动条的样式 */
  233. .second-box::-webkit-scrollbar {
  234. width:10px;
  235. }
  236. /* 滚动槽 */
  237. .second-box::-webkit-scrollbar-track {
  238. -webkit-box-shadow:inset006pxrgba(0,0,0,0.3);
  239. }
  240. /* 滚动条滑块 */
  241. .second-box::-webkit-scrollbar-thumb {
  242. background: #666666;
  243. -webkit-box-shadow:inset006pxrgba(0,0,0,0.5);
  244. }
  245. .second-box::-webkit-scrollbar-thumb:window-inactive {
  246. background:#333;
  247. }
  248. .space-between {
  249. display: flex;
  250. justify-content: space-between;
  251. align-items: center;
  252. }
  253. .flex-sub {
  254. flex: 1;
  255. text-align: right;
  256. }
  257. .grey {
  258. background-color: #CCCCCC;
  259. }
  260. .justify-end {
  261. display: flex;
  262. justify-content: flex-end;
  263. box-sizing: border-box;
  264. padding: 10px 20px;
  265. }
  266. .justify-start {
  267. display: flex;
  268. justify-content: flex-end;
  269. box-sizing: border-box;
  270. padding: 10px 20px;
  271. }
  272. .ptb10 {
  273. box-sizing: border-box;
  274. padding: 10px 20px;
  275. }
  276. .borderTop {
  277. border-top: 1px solid #f5f5f5;
  278. }
  279. .center {
  280. display: flex;
  281. justify-content: center;
  282. align-items: center;
  283. }
  284. </style>
  285. <body>
  286. <form class="layui-form" id="admin" enctype="multipart/form-data">
  287. <div class="layui-form" lay-filter="layuiadmin-app-form-list" id="layuiadmin-app-form-list">
  288. <div class="layui-form-item">
  289. <div class="layui-tab layui-tab-card">
  290. <div class="layui-tab-content">
  291. <div class="layui-tab-item layui-show">
  292. <div class="layui-form-item">
  293. <label class="layui-form-label"><i style="color:red;">*&nbsp;</i>群发类型</label>
  294. <input type="radio" lay-filter="type" name="type" value="1" title="群发到客户" checked>
  295. <input type="radio" lay-filter="type" name="type" value="2" title="群发到客户群" >
  296. </div>
  297. <div class="layui-form-item mt10">
  298. <label class="layui-form-label"><i style="color:red;">*&nbsp;</i>群发内容</label>
  299. <textarea name="content" required lay-verify="required" placeholder="请输入"
  300. class="layui-textarea" style="width:70%;"></textarea>
  301. <!-- <div class="upload" id="img"><i class="layui-icon layui-icon-picture"></i><span class="font15">上传图片</span></div>-->
  302. </div>
  303. <!-- <div class="layui-form-item mt10">
  304. <label class="layui-form-label">群发附件</label>
  305. <div class="layui-input-inline">
  306. <div class="upload" id="img"><i class="layui-icon layui-icon-picture"></i><span class="font15">上传图片</span></div>
  307. <input type="hidden" name="media_id" id="media_id">
  308. </div>
  309. </div> -->
  310. <div class="layui-form-item" id="imageFiles" style="min-height: 0px;margin-bottom: 0px;">
  311. <label class="layui-form-label"></label>
  312. <div class="picDiv" style="margin-left: 225px;">
  313. </div>
  314. </div>
  315. <div class="layui-form-item" style="margin-bottom: 30px;">
  316. <label class="layui-form-label"><i style="color:red;">*&nbsp;</i>执行时间</label>
  317. <div class="layui-input-inline flex-center border">
  318. <input type="text" name="sendtime" id="start_date" placeholder="选择开始日期"
  319. autocomplete="off" class="layui-input" lay-verify="required">
  320. <img src="__STATIC__/img/bg-calendar.png" alt="日历" width="14px" height="14px">
  321. </div>
  322. <div class="layui-form-mid">-</div>
  323. <div class="layui-input-inline flex-center border">
  324. <input type="text" name="endtime" id="end_date" placeholder="选择结束日期"
  325. autocomplete="off" class="layui-input" lay-verify="required">
  326. <img src="__STATIC__/img/bg-calendar.png" alt="日历" width="14px" height="14px">
  327. </div>
  328. </div>
  329. <div class="layui-form-item">
  330. <label class="layui-form-label"><i style="color:red;">*&nbsp;</i>群发对象</label>
  331. <div class="layui-input-inline" style="width: 500px;">
  332. <div id="range_person" style="width: 500px;"></div>
  333. <div id="range_people" class="layui-hide"></div>
  334. </div>
  335. </div>
  336. <input type="button" style="margin-left:23.5%;height:38px;" lay-submit
  337. class="layui-btn layui-btn-normal" lay-filter="activity-submit" id="activity-submit"
  338. value="确认添加">
  339. <!-- <button type="button" class="layui-btn plr20 cancel">取消</button> -->
  340. </div>
  341. </div>
  342. </div>
  343. </div>
  344. </div>
  345. </form>
  346. <div class="mask layui-hide">
  347. <div class="mask-content">
  348. <div class="header-nav">
  349. <span>选择客户群</span>
  350. <i class="layui-icon layui-icon-close" style="font-weight: 600;font-size: 18px;cursor: pointer;" id="closeMask"></i>
  351. </div>
  352. <div class="list-content">
  353. <div class="first-box">
  354. <div class="first-content">
  355. </div>
  356. </div>
  357. <div class="second-box">
  358. </div>
  359. </div>
  360. <div class="space-between borderTop">
  361. <div class="flex-sub center" id="test1">
  362. </div>
  363. <div class="justify-end flex-sub">
  364. <div class="layui-btn sure">确定</div>
  365. </div>
  366. </div>
  367. </div>
  368. </div>
  369. </body>
  370. {/block} {block name="js"}
  371. <script src="__STATIC__/layui/layui/lay/modules/xm-select.js" type="text/javascript" charset="utf-8"></script>
  372. <script>
  373. layui.config({
  374. base: '__LAYUI__/',
  375. urlbase: '/sys'
  376. }).extend({
  377. index: 'lib/index' //主入口模块
  378. }).use(['index', 'form', 'upload', 'layedit', 'laydate','laypage'], function () {
  379. var form = layui.form,
  380. upload = layui.upload,
  381. layedit = layui.layedit,
  382. laydate = layui.laydate,
  383. $ = layui.jquery,
  384. files,
  385. img_id=[],
  386. img_id_arr=[],
  387. listData = [],
  388. selectData = [],
  389. laypage = layui.laypage;
  390. var textarea = layedit.build('content', {
  391. 'height': 500
  392. });
  393. form.render();
  394. /* 监听提交 */
  395. form.on('submit(activity-submit)', function (obj) {
  396. var index = parent.layer.getFrameIndex(window.name);
  397. var formData = new FormData(obj.form);
  398. let val1 = approve_ids.getValue('valueStr');
  399. let typeVal = formData.get("type");
  400. let startDate = new Date(formData.get("sendtime")).getTime();
  401. let endDate = new Date(formData.get("endtime")).getTime();
  402. if (endDate < startDate) {
  403. layer.msg('结束时间不能小于开始时间', {
  404. anim: 6
  405. ,time: 2000
  406. });
  407. return;
  408. }
  409. if ((!val1 && typeVal == 1) || (!selectData.length && typeVal == 2)) {
  410. layer.msg('请选择群发对象', {
  411. anim: 6
  412. , time: 2000
  413. });
  414. return;
  415. }
  416. if (typeVal == 1) {
  417. if (formData.has("employee_id")) {
  418. formData.delete('employee_id');
  419. }
  420. formData.append('select', val1)
  421. } else {
  422. if (formData.has("select")) {
  423. formData.delete('select');
  424. }
  425. formData.append('employee_id', selectData.map(v => v.id).join(','))
  426. }
  427. var formImg = []
  428. for(i in img_id_arr) {
  429. formImg.push(img_id[img_id_arr[i]])
  430. }
  431. formData.append('media_id_arr', formImg);
  432. // 单击之后提交按钮不可选,防止重复提交
  433. var DISABLED = 'layui-btn-disabled';
  434. var target = '#activity-submit';
  435. $(target).addClass(DISABLED);
  436. $(target).attr('disabled', 'disabled');
  437. $.ajax({
  438. url: '{:url("add_external_message")}',
  439. type: 'post',
  440. data: formData,
  441. dataType: 'json',
  442. processData: false,
  443. contentType: false,
  444. success: function(res) {
  445. if(res.code === 0) {
  446. layer.msg(res.msg, {
  447. anim: 0
  448. }, function() {
  449. parent.layui.table.reload('qunfa-table');
  450. parent.layer.close(index);
  451. });
  452. } else {
  453. layer.msg(res.msg, {
  454. anim: 6
  455. });
  456. }
  457. }
  458. });
  459. });
  460. $('#range_people').click(() => {
  461. let el = $('.mask')[0];
  462. if (el.className.indexOf('layui-hide') > 0) {
  463. el.className = 'mask';
  464. } else {
  465. el.className = 'mask layui-hide';
  466. }
  467. })
  468. function getchatListData (page = 1) {
  469. $.ajax({
  470. url: "{:url('getUserList')}",
  471. data: {
  472. page: page,
  473. limit: 10
  474. },
  475. dataType: 'json',
  476. type: 'post',
  477. success: function(data) {
  478. listData = data.data.list;
  479. $('.first-content')[0].innerHTML = listData.map((v,i) => {
  480. let il = selectData.filter(o => o.id == v.id);
  481. if(il.length) {
  482. return `<div class="item space-between" title="${v.id}">
  483. <input id="${v.id}" type="checkbox" name="${v.id}" title="${v.name}" lay-skin="primary" style="display:block;" checked/>
  484. <label for="${v.id}" class="flex-sub">${v.name}</label>
  485. </div>`
  486. } else {
  487. return `<div class="item space-between" title="${v.id}">
  488. <input id="${v.id}" type="checkbox" name="${v.id}" title="${v.name}" lay-skin="primary" style="display:block;"/>
  489. <label for="${v.id}" class="flex-sub">${v.name}</label>
  490. </div>`
  491. }
  492. }).join('');
  493. //执行一个laypage实例
  494. laypage.render({
  495. elem: 'test1' //注意,这里的 test1 是 ID,不用加 # 号
  496. ,count: data.data.count, //数据总数,从服务端得到
  497. curr: page,
  498. groups: 3,
  499. jump: function(obj, first){
  500. //obj包含了当前分页的所有参数,比如:
  501. console.log(obj.curr); //得到当前页,以便向服务端请求对应页的数据。
  502. console.log(obj.limit); //得到每页显示的条数
  503. //首次不执行
  504. if(!first){
  505. getchatListData(obj.curr);
  506. }
  507. }
  508. });
  509. }
  510. });
  511. }
  512. getchatListData();
  513. function setSelectDataHtml (data) {
  514. $('.second-box')[0].innerHTML = data.map((v,i) => {
  515. return `<div class="item space-between">
  516. <span>${v.name}</span>
  517. <i class="layui-icon layui-icon-close" data-index="${i}" data-chatId="${v.id}"></i>
  518. </div>`
  519. }).join('');
  520. }
  521. $('.sure').click(() => {
  522. $('#range_people')[0].innerHTML = selectData.map((v,i) => {
  523. return v.name;
  524. }).join(', ');
  525. $('.mask')[0].className = 'mask layui-hide';
  526. })
  527. $('.first-content').click((e) => {
  528. if (e.target.name) {
  529. let index = null;
  530. let o = listData.filter(v => v.id == e.target.name);
  531. let ol = selectData.filter((v,i) => {
  532. if (v.id == e.target.name) {
  533. index = i;
  534. return v;
  535. }
  536. } );
  537. if (ol.length > 0 && (index || (index == 0))) {
  538. selectData.splice(index,1);
  539. setSelectDataHtml(selectData)
  540. } else {
  541. selectData.push(...o);
  542. setSelectDataHtml(selectData)
  543. }
  544. }
  545. });
  546. $('.second-box').click((e) => {
  547. if (e.target.localName == 'i') {
  548. let o = parseInt(e.target.dataset.index);
  549. selectData.splice(o,1);
  550. setSelectDataHtml(selectData);
  551. $(`#${e.target.dataset.chatid}`).prop('checked',false)
  552. }
  553. })
  554. $(document).click((e) => {
  555. let pl = $('.layui-form-radioed')[0];
  556. if (pl.innerText == '群发到客户群') {
  557. let el = $('#range_person')[0];
  558. let elo = $('#range_people')[0];
  559. el.className = 'layui-hide'
  560. elo.className = ''
  561. } else {
  562. let el = $('#range_person')[0];
  563. let elo = $('#range_people')[0];
  564. el.className = '';
  565. elo.className = 'layui-hide'
  566. }
  567. })
  568. $('#closeMask').click(() => {
  569. let el = $('.mask')[0];
  570. el.className = 'mask layui-hide';
  571. })
  572. //选择群发对象
  573. var approve_ids = xmSelect.render({
  574. el: "#range_person",
  575. autoRow: true,
  576. filterable: true,
  577. tips: '群发对象',
  578. toolbar: {
  579. //工具条,全选,清空,反选,自定义
  580. show: true,
  581. list: [
  582. 'ALL',
  583. 'CLEAR',
  584. 'REVERSE'
  585. ]
  586. },
  587. // tree: {
  588. // show: true,
  589. // showFolderIcon: true,
  590. // showLine: true,
  591. // indent: 20,
  592. // expandedKeys: [ -3 ],
  593. // },
  594. height: "200px",
  595. data: [{
  596. children: [],
  597. id: 1,
  598. name: "确认量房",
  599. pid: 0,
  600. value: 1,
  601. }, {
  602. children: [],
  603. id: 2,
  604. name: "交定",
  605. pid: 0,
  606. value: 2,
  607. }, {
  608. children: [],
  609. id: 3,
  610. name: "合同",
  611. pid: 0,
  612. value: 3,
  613. }],
  614. //文本显示模式
  615. //处理方式
  616. });
  617. //多图片上传
  618. // upload.render({
  619. // elem: '#img',
  620. // accept: 'images',
  621. // url: '/upload/',
  622. // exts: 'jpg|png|bmp|jpeg|JPG|PNG|BMP|JPEG',
  623. // field: 'article_image',
  624. // size: 5 * 1024,
  625. // auto: false,
  626. // multiple: true,
  627. // choose: function(obj) {
  628. // files = obj.pushFile();
  629. // length = $('.imageDiv').length;
  630. // obj.preview(function(index, file, result) {
  631. // console.log(index)
  632. // console.log(file)
  633. // console.log(result)
  634. // length++;
  635. // if(length > 9) {
  636. // if(length == 10) layer.msg('限制九张图片以下');
  637. // delete files[index];
  638. // } else {
  639. // $.ajax({
  640. // url: "{:url('weworkUpload')}",
  641. // data: {path: result},
  642. // type: 'post',
  643. // success:function (res) {
  644. // if (res.code == 0) {
  645. // img_id_arr.push(index);
  646. // img_id[index] = res.data;
  647. // $('.picDiv').prepend('<div class="imageDiv" data-id="' + index + '"><img src="' + result + '" alt="' + file.name + '" class="layui-upload-img" width="100%" height="100%"><div><i class="layui-icon layui-icon-delete" prop="del"></i></div></div>');
  648. // } else {
  649. // layer.msg(res.msg);
  650. // }
  651. // }
  652. // })
  653. // }
  654. // if (length) {
  655. // $('#imageFiles').removeClass('layui-hide')
  656. // }
  657. // });
  658. // }
  659. // });
  660. $('.cancel').click(function () {
  661. var index = parent.layer.getFrameIndex(window.name);
  662. parent.layer.close(index);
  663. })
  664. //日期范围
  665. laydate.render({
  666. elem: '#start_date',
  667. trigger: 'click',//呼出事件改成click
  668. type: 'datetime',
  669. format: 'yyyy-MM-dd HH:mm'
  670. });
  671. laydate.render({
  672. elem: '#end_date',
  673. trigger: 'click', //呼出事件改成click
  674. type: 'datetime',
  675. format: 'yyyy-MM-dd HH:mm'
  676. });
  677. form.on('radio(type)', function (data) {
  678. if (data.value == 1) {
  679. $('#money').addClass('layui-hide');
  680. } else {
  681. $('#money').removeClass('layui-hide');
  682. }
  683. });
  684. $('.picDiv').on('click', 'i', function(e) {
  685. var that = this;
  686. if (e.target.attributes[1].nodeValue === 'view') {
  687. layer.photos({ photos: {"data": [{"src": e.target.attributes[2].nodeValue}]} ,closeBtn:true});
  688. } else {
  689. layer.confirm('确定删除该图片么?',{title:['信息', 'color:#333333;background-color:#D8E6F1;'],}, function(index) {
  690. var imgDiv = $(that).closest('.imageDiv');
  691. if(id = imgDiv.data('id')) {
  692. delete files[id];
  693. var io = img_id_arr.indexOf(id)
  694. if (io > -1) {
  695. img_id_arr.splice(io, 1);
  696. }
  697. }
  698. imgDiv.remove();
  699. layer.close(index);
  700. });
  701. }
  702. });
  703. });
  704. </script>
  705. {/block}