upload.html 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <script src="js/jquery/jquery.min.js"></script>
  7. <!-- <script type="text/javascript" src="js/plupload/js/jqueryui/jquery-ui.min.js"></script>-->
  8. <!-- <link rel="stylesheet" href="js/plupload/js/jqueryui/jquery-ui.min.css"/>-->
  9. <link rel="stylesheet" href="js/bootstrap/css/bootstrap.css"/>
  10. <script type="text/javascript" src="js/plupload/plupload.full.min.js"></script>
  11. <style>
  12. .upload {
  13. width: 100%;
  14. text-align: center;
  15. }
  16. .title_span {
  17. font-size: 24px;
  18. color: rgba(0, 0, 0, .85);
  19. font-weight: 500;
  20. line-height: 32px;
  21. margin-bottom: 16px;
  22. margin-top: 16px;
  23. }
  24. </style>
  25. </head>
  26. <body>
  27. <div class="upload">
  28. <img src="img/upload.png" style="width: 80px;height: 80px"/>
  29. <div class="title_span">
  30. 上传文件
  31. </div>
  32. <div class="form-horizontal" role="form" style="width: 50%;margin: 0 25%;">
  33. <div class="form-group">
  34. <label class="col-md-3 control-label">
  35. 订单名称
  36. </label>
  37. <div class="col-md-6">
  38. <input id="orderName" type="text" class="form-control">
  39. </div>
  40. </div>
  41. <div class="form-group">
  42. <label class="col-md-3 control-label">
  43. 订单编号
  44. </label>
  45. <div class="col-md-6">
  46. <input id="orderCode" type="text" class="form-control">
  47. </div>
  48. </div>
  49. <div class="form-group">
  50. <label class="col-md-3 control-label" id="fileType">
  51. 上传文件
  52. </label>
  53. <div class="col-md-6" style="text-align: start">
  54. <button id="uploader" type="submit" class="btn btn-primary" style="background-color: #409EFF;border-color: #409EFF;">请选择上传文件</button>
  55. </div>
  56. </div>
  57. <div class="form-group tableDiv" style="display: none">
  58. <div class="col-md-8 control-label col-md-offset-2">
  59. <table class="table table-bordered table-hover table-condensed">
  60. <thead style="text-align: center">
  61. <!-- <th>#</th>-->
  62. <th>文件名</th>
  63. <th></th>
  64. </thead>
  65. <tbody id="tableBody">
  66. </tbody>
  67. </table>
  68. </div>
  69. </div>
  70. <div class="form-group tableDiv" style="display: none">
  71. <div class="col-md-6 col-md-offset-2" style="text-align: start">
  72. <button id="startUpload" type="submit" class="btn btn-primary" style="background-color: #409EFF;border-color: #409EFF;">开始上传</button>
  73. </div>
  74. </div>
  75. </div>
  76. </div>
  77. <script>
  78. $(function () {
  79. var type = query('type')
  80. var orderId = query('id')
  81. var orderName = query('orderName')
  82. var orderCode = query('orderCode')
  83. var idUser = query('idUser')
  84. var supplierCode = query('supplierCode')
  85. var dataSourceId = query('dataSourceId')
  86. var url = '/apis/upload/orderFile'
  87. var title = '上传原图文件'
  88. if(type == 1){
  89. title= '上传原图文件'
  90. url = '/apis/upload/orderFile'
  91. }else if (type == 2){
  92. title= '上传附件文件'
  93. url='/apis/upload/orderAttachFile'
  94. }
  95. document.title = title
  96. $('.title_span').html(title)
  97. $('#fileType').html(title)
  98. $('#orderName').val(orderName)
  99. $('#orderCode').val(orderCode)
  100. var uploader = new plupload.Uploader({
  101. // $("#uploader").plupload({
  102. runtimes: 'html5,flash,silverlight,html4',//这里可以不写,plupload默认支持
  103. url: url,//上传后台请求路径
  104. browse_button: 'uploader',
  105. filters: {
  106. mime_types: [
  107. {title: "图片文件", extensions: "jpg,jpeg,png,bmp,cdr"}
  108. ],
  109. max_file_size: '5mb'//用来限制单个文件大小的
  110. },
  111. multi_selection: false,//默认支持多文件上传,false不支持 multi_selection: false,
  112. flash_swf_url: '/swf/Moxie.swf',
  113. silverlight_xap_url: '/swf/Moxie.xap', //silverlight文件,当需要使用silverlight方式进行上传时需要配置该参数
  114. dragdrop: true,
  115. chunk_size: '1mb',//是否将上传文件进行分片,0代表是不分
  116. init: {
  117. BeforeUpload(up, file) {
  118. console.log(file);
  119. up.setOption('multipart_params', {
  120. 'supplierCode':supplierCode,
  121. 'dataSourceId':dataSourceId,
  122. 'idUser':idUser,
  123. 'srcfilename': file.name,
  124. 'idOrder': orderId,
  125. 'orderCode': orderCode
  126. })
  127. },
  128. UploadProgress(up, files) {
  129. console.log('UploadProgress',files)
  130. console.log('上传')
  131. $('#progress1').html(`
  132. <div class="progress-bar" role="progressbar" aria-valuenow="60"
  133. aria-valuemin="0" aria-valuemax="100" style="width: ${files.percent}%;">
  134. <span class="sr-only">完成 ${files.percent}% </span>
  135. </div>`)
  136. },
  137. FileUploaded(up, file, info) {
  138. console.log(info);
  139. if (info.status === 200) {
  140. alert('上传成功')
  141. up.refresh()
  142. }
  143. },
  144. FilesAdded(up, files) {
  145. // console.log('up', up);
  146. console.log('FilesAdded', files)
  147. var html = ''
  148. if(files.length>0){
  149. $('.tableDiv').show()
  150. }
  151. for (let i = 0; i < files.length; i++) {
  152. html += `<tr>
  153. <td style="width: 200px">${files[i].name}</td>
  154. <td><div class="progress" id="progress1">
  155. </div></td>
  156. </tr>`
  157. }
  158. $('#tableBody').html(html)
  159. },
  160. Error(up, args) {
  161. alert(args.response)
  162. }
  163. }
  164. });
  165. //在实例对象上调用init()方法进行初始化
  166. uploader.init();
  167. // //给"开始上传"按钮注册事件
  168. $('#startUpload').click(function (){
  169. console.log('点击了');
  170. uploader.start();
  171. })
  172. })
  173. //取 url 参数函数
  174. function query(variable) {
  175. var query = window.location.search.substring(1);
  176. var vars = query.split("&");
  177. for (var i = 0; i < vars.length; i++) {
  178. var pair = vars[i].split("=");
  179. if (pair[0] == variable) {
  180. return decodeURIComponent(pair[1]);
  181. }
  182. }
  183. return (false);
  184. }
  185. </script>
  186. </body>
  187. </html>