upload_product.htm 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. <html lang="zh-cn">
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
  4. <title>文件管理</title>
  5. <link rel="stylesheet" type="text/css" href="__PUBLIC__/plugins/webuploader/webuploader.css?v={$version|default='1.2.9'}">
  6. <link rel="stylesheet" type="text/css" href="__PUBLIC__/plugins/webuploader/css/style.css?v={$version|default='1.2.9'}">
  7. <script type="text/javascript">
  8. var eyou_basefile = "{$Request.baseFile}";
  9. var module_name = "{$Think.const.MODULE_NAME}";
  10. var __root_dir__ = "__ROOT_DIR__";
  11. </script>
  12. </head>
  13. <body>
  14. <div class="upload-box" style="height: 90%;">
  15. <ul class="tabs">
  16. <li class="checked" id="upload_tab">本地上传</li>
  17. <a href="javascript:void(0);" onclick="picture_folder(this);" data-url="{:url('Uploadify/picture_folder',['num'=>$info['num'],'input'=>$info['input'],'path'=>$info['path'],'func'=>$info['func']])}"><li>在线管理</li></a>
  18. <!-- <li id="search_tab">文件搜索</li> -->
  19. </ul>
  20. <div class="container">
  21. <div class="area upload-area area-checked" id="upload_area">
  22. <div id="uploader">
  23. <div class="statusBar" style="display:none;">
  24. <div class="progress">
  25. <span class="text">0%</span>
  26. <span class="percentage"></span>
  27. </div><div class="info"></div>
  28. <div class="btns">
  29. <div id="filePicker2"></div><div class="uploadBtn">开始上传</div>
  30. <div class="saveBtn">确定使用</div>
  31. </div>
  32. </div>
  33. <div class="queueList">
  34. <div id="dndArea" class="placeholder">
  35. <div id="filePicker"></div>
  36. <p>或将文件拖到这里,本次最多可选{$field.num|default=1}个</p>
  37. </div>
  38. </div>
  39. </div>
  40. </div>
  41. <div class="area manage-area" id="manage_area">
  42. <ul class="choose-btns">
  43. <li class="btn sure checked">确定</li>
  44. <li class="btn cancel">取消</li>
  45. </ul>
  46. <div class="file-list">
  47. <ul id="file_all_list">
  48. <!--<li class="checked">
  49. <div class="img">
  50. <img src="" />
  51. <span class="icon"></span>
  52. </div>
  53. <div class="desc"></div>
  54. </li>-->
  55. </ul>
  56. </div>
  57. </div>
  58. <div class="area search-area" id="search_area">
  59. <ul class="choose-btns">
  60. <li class="search">
  61. <div class="search-condition">
  62. <input class="key" type="text" />
  63. <input class="submit" type="button" hidefocus="true" value="搜索" />
  64. </div>
  65. </li>
  66. <li class="btn sure checked">确定</li>
  67. <li class="btn cancel">取消</li>
  68. </ul>
  69. <div class="file-list">
  70. <ul id="file_search_list">
  71. <!--<li>
  72. <div class="img">
  73. <img src="" />
  74. <span class="icon"></span>
  75. </div>
  76. <div class="desc"></div>
  77. </li>-->
  78. </ul>
  79. </div>
  80. </div>
  81. <div class="fileWarp" style="display:none;">
  82. <fieldset>
  83. <legend>列表</legend>
  84. <ul>
  85. </ul>
  86. </fieldset>
  87. </div>
  88. </div>
  89. </div>
  90. <script type="text/javascript" src="__STATIC__/common/js/jquery.min.js"></script>
  91. <script type="text/javascript" src="__PUBLIC__/plugins/webuploader/webuploader.min.js?v={$version|default='1.2.9'}"></script>
  92. <script type="text/javascript" src="__PUBLIC__/plugins/webuploader/upload.js?v={$version|default='1.2.9'}"></script>
  93. <script type="text/javascript" src="__PUBLIC__/plugins/layer-v3.1.0/layer.js?v={$version|default='1.2.9'}"></script>
  94. <script src="__SKIN__/js/global.js?v={$version}"></script>
  95. <script type="text/javascript">
  96. $(function(){
  97. var config = {
  98. "swf":"__PUBLIC__/plugins/webuploader/Uploader.swf",
  99. "server":"{$field.upload}",
  100. "filelistPah":"{$field.fileList}",
  101. "delPath":"{:url('Uploadify/delupload')}",
  102. "chunked":false,
  103. "chunkSize":524288,
  104. "fileNumLimit":{$field.num|default=1},
  105. "fileSizeLimit":209715200,
  106. "fileSingleSizeLimit":{$field.size},
  107. "fileVal":"file",
  108. "auto":true,
  109. "formData":{},
  110. "pick":{"id":"#filePicker","label":"点击选择图片","name":"file"},
  111. "thumb":{"width":110,"height":110,"quality":70,"allowMagnify":true,"crop":true,"preserveHeaders":false,"type":"image\/jpeg"},
  112. "compress": {
  113. "width": 3800,
  114. "height": 3800,
  115. "quality": 90,
  116. "allowMagnify": false,
  117. "crop": false,
  118. "preserveHeaders": true
  119. }
  120. };
  121. Manager.upload($.extend(config, {type : "Images"}));
  122. /*点击保存按钮时
  123. *判断允许上传数,检测是单一文件上传还是组文件上传
  124. *如果是单一文件,上传结束后将地址存入$input元素
  125. *如果是组文件上传,则创建input样式,添加到$input后面
  126. *隐藏父框架,清空列队,移除已上传文件样式*/
  127. $(".statusBar .saveBtn").click(function(){
  128. var aid = {$field.aid};
  129. var callback = "{$field.func}";
  130. var num = {$field.num|default=1};
  131. var fileurl_tmp = [];
  132. if(callback != "undefined"){
  133. if(num > 1){
  134. $("input[name^='fileurl_tmp']").each(function(index,dom){
  135. fileurl_tmp[index] = dom.value;
  136. });
  137. }else{
  138. fileurl_tmp = $("input[name^='fileurl_tmp']").val();
  139. }
  140. /*防止图片上传过程中用户点击确定,导致获取图片失败 by 小虎哥*/
  141. if (fileurl_tmp == undefined || fileurl_tmp.length == 0) {
  142. layer.msg('正在处理……', {icon: 6,time: 2000});
  143. return false;
  144. }
  145. /*--end*/
  146. eval('window.parent.'+callback+'(fileurl_tmp)');
  147. upload_save_product(aid, fileurl_tmp);
  148. return;
  149. }
  150. if(num > 1){
  151. var fileurl_tmp = "";
  152. $("input[name^='fileurl_tmp']").each(function(){
  153. fileurl_tmp += '<li rel="'+ this.value +'"><input class="input-text" type="text" name="{$field.input}[]" value="'+ this.value +'" /><a href="javascript:void(0);" onclick="ClearPicArr(\''+ this.value +'\',\'\')">删除</a></li>';
  154. });
  155. $(window.parent.document).find("#{$field.input}").append(fileurl_tmp);
  156. }else{
  157. $(window.parent.document).find("#{$field.input}").val($("input[name^='fileurl_tmp']").val());
  158. }
  159. window.parent.layer.closeAll();
  160. });
  161. function upload_save_product(aid, a)
  162. {
  163. $.ajax({
  164. type: "POST",
  165. url: "{:url('Product/ajax_save_productimg', ['_ajax'=>1])}",
  166. data: {proimg:a, aid:aid},
  167. dataType: 'json',
  168. success: function (data) {
  169. if(data.status == 1){
  170. window.parent.layer.closeAll();
  171. window.parent.location.reload();
  172. }else{
  173. layer.alert(data.msg, {icon: 2,time: 3000, title:false});
  174. }
  175. },
  176. error: function(e){
  177. layer.alert('未知错误,无法继续!', {icon: 2,time: 3000, title:false});
  178. }
  179. });
  180. }
  181. });
  182. function picture_folder(obj)
  183. {
  184. var url = $(obj).attr('data-url');
  185. layer_loading('正在跳转');
  186. window.location.href = url;
  187. }
  188. </script>
  189. </body>
  190. </html>