uploadimg.html 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366
  1. <!-- <div class="cl pd-5 bg-1 bk-gray">
  2. <a href="{:url('/file_manager/selectpicture')}" class="btn btn-default radius sethumb">
  3. <i class="Hui-iconfont">&#xe600;</i> 站内选择 </a>&nbsp;&nbsp;
  4. <a href="javascript:void(0);" class="btn btn-primary radius sethumb">
  5. <i class="Hui-iconfont">&#xe600;</i> 本地上传 </a>&nbsp;&nbsp;
  6. <a href="{:url('/file_manager/onlinepicture')}" class="btn btn-default radius sethumb">
  7. <i class="Hui-iconfont">&#xe600;</i> 网络图片 </a>&nbsp;&nbsp;
  8. </div> -->
  9. <!-- 本地上传 -->
  10. <div id="tab-img" class="HuiTab">
  11. <div class="tabBar clearfix">
  12. <span>本地上传</span>
  13. <span>网络文件上传</span>
  14. <span>服务器图片选择</span>
  15. <input type="hidden" name="layer" id="layer" value="{$layer}">
  16. </div>
  17. <div class="tabCon">
  18. <div class="step1 active" style="margin-left:30px;">
  19. <form id="form-uploadimg" method="post" action="" enctype="multipart/form-data">
  20. <div class="row cl" style="margin-top:20px;">
  21. <label class="form-label col-xs-2 col-sm-2"><span class="c-red">*</span>图片要求: </label>
  22. <div class="formControls col-xs-8 col-sm-8">
  23. 格式 jpg,png,gif,jpeg,webp; 大小不超过4M.
  24. </div>
  25. <div class="col-3"> </div>
  26. </div>
  27. <div class="row cl" style="margin-top:20px;">
  28. <label class="form-label col-xs-2 col-sm-2">
  29. <span class="c-red">*</span>本地上传:</label>
  30. <div class="formControls col-xs-8 col-sm-8">
  31. <input type="file" class="input-text" name="upload_file" id="upload_file">
  32. </div>
  33. <div class="col-3"> </div>
  34. </div>
  35. <div class="row cl" style="margin-top:20px;">
  36. <input type="hidden" name="img_id" value={$img_id}>
  37. <input type="hidden" name="infoid" value={$infoid}>
  38. <input type="hidden" name="cjid" value={$cjid}>
  39. <div class="formControls col-sm-8">
  40. <div class="skin-minimal">
  41. <div class="check-box">
  42. <input type="checkbox" name="thumb" value="true" {$thumb ? 'checked' : "" }>
  43. <label for="thumb-1">缩略图</label>
  44. <input type="text" class="input-text" name="width" value={$width}
  45. style="width: 80px;">缩略图宽度
  46. <input type="text" class="input-text" name="height" value={$height}
  47. style="width: 80px;">缩略图高度
  48. </div>
  49. <div class="check-box">
  50. <input type="checkbox" name="original" value="true" {$original ? 'checked' : "" }>
  51. <label for="overwrite">保留原图</label>
  52. </div>
  53. </div>
  54. </div>
  55. </div>
  56. <div class="row cl" style="margin-top:30px;margin-left:30px;">
  57. <div class="col-xs-6 col-sm-5 col-xs-offset-2 col-sm-offset-2">
  58. <input class="btn btn-primary radius" type="button" value="&nbsp;确&nbsp;定&nbsp;"
  59. onCLick="uploadLocalImg();">
  60. <input class="btn btn-default radius" type="button" value="&nbsp;取&nbsp;消&nbsp;"
  61. onClick="layer_close();">
  62. </div>
  63. </div>
  64. </form>
  65. </div>
  66. <!-- 本地上传end -->
  67. </div>
  68. <!-- 网络图片 -->
  69. <div class="tabCon">
  70. <form id="form-uploadurlimg" method="post" action="" enctype="multipart/form-data">
  71. <div class="row cl" style="margin-top:20px;">
  72. <label class="form-label col-xs-2 col-sm-2"><span class="c-red">*</span>图片要求: </label>
  73. <div class="formControls col-xs-8 col-sm-8">
  74. 格式 jpg,png,gif,jpeg,webp; 大小不超过4M.
  75. </div>
  76. <div class="col-3"> </div>
  77. </div>
  78. <div class="row cl" style="margin-top:20px;">
  79. <label class="form-label col-xs-2 col-sm-2">
  80. <span class="c-red">*</span>图片地址:</label>
  81. <div class="formControls col-xs-8 col-sm-8">
  82. <input type="text" class="input-text" name="url_file" id="url_file">
  83. </div>
  84. <div class="col-3"> </div>
  85. </div>
  86. <div class="row cl" style="margin-top:20px;">
  87. <input type="hidden" name="img_id" value={$img_id}>
  88. <input type="hidden" name="infoid" value={$infoid}>
  89. <input type="hidden" name="cjid" value={$cjid}>
  90. <div class="formControls col-xs-12 col-sm-8">
  91. <div class="skin-minimal">
  92. <div class="check-box">
  93. <input type="checkbox" name="thumb" value="{$thumb}" {$thumb ? 'checked' : "" }>
  94. <label for="thumb-1">缩略图</label>
  95. <input type="text" class="input-text" name="width" value={$width} style="width: 80px;">缩略图宽度
  96. <input type="text" class="input-text" name="height" value={$height}
  97. style="width: 80px;">缩略图高度
  98. </div>
  99. <div class="check-box">
  100. <input type="checkbox" name="original" value="{$original}" {$original ? 'checked' : "" }>
  101. <label for="overwrite">保留原图</label>
  102. </div>
  103. </div>
  104. </div>
  105. </div>
  106. <div class="row cl" style="margin-top:30px;margin-left:30px;">
  107. <div class="col-xs-6 col-sm-5 col-xs-offset-2 col-sm-offset-2">
  108. <input class="btn btn-primary radius" type="button" value="&nbsp;确&nbsp;定&nbsp;"
  109. onCLick="uploadUrlImg()">
  110. <input class="btn btn-default radius" type="button" value="&nbsp;取&nbsp;消&nbsp;"
  111. onClick="layer_close();">
  112. </div>
  113. </div>
  114. </form>
  115. </div>
  116. <!-- 在线图片 -->
  117. <style>
  118. a.active-btn {
  119. color: #fff;
  120. background-color: #3bb4f2;
  121. border-color: #3bb4f2;
  122. }
  123. </style>
  124. <div class="tabCon">
  125. <a class="btn radius active-btn" id="database_picture"><i class="Hui-iconfont Hui-iconfont-jifen"></i>数据库模式</a>
  126. <a class="btn radius" id="directory_picture"><i class="Hui-iconfont Hui-iconfont-pages"></i> 目录模式</a>
  127. <div class="database online-picture">
  128. {include file="file_manager/database_picture" /}
  129. </div>
  130. <div class="directory online-picture" style="display: none;">
  131. {include file="file_manager/directory_picture" /}
  132. </div>
  133. <form id="form-uploadonlineimg" method="post" action="" enctype="multipart/form-data">
  134. <div class="row cl" style="margin-top:20px;">
  135. <label class="form-label col-xs-2 col-sm-2">
  136. <span class="c-red">*</span>图片地址:</label>
  137. <div class="formControls col-xs-8 col-sm-8">
  138. <input type="hidden" name="img_id" value={$img_id}>
  139. <input type="text" class="input-text" name="online_file" id="online_file">
  140. </div>
  141. <div class="col-3"> </div>
  142. </div>
  143. <div class="row cl" style="margin-top:30px;margin-left:30px;">
  144. <div class="col-xs-6 col-sm-5 col-xs-offset-2 col-sm-offset-2">
  145. <input class="btn btn-primary radius" type="button" value="&nbsp;确&nbsp;定&nbsp;"
  146. onCLick="uploadOnlineImg()">
  147. <input class="btn btn-default radius" type="button" value="&nbsp;取&nbsp;消&nbsp;"
  148. onClick="layer_close();">
  149. </div>
  150. </div>
  151. </form>
  152. </div>
  153. </div>
  154. <!--请在下方写此页面业务相关的脚本-->
  155. <script type="text/javascript">
  156. jQuery.Huitab = function (tabBar, tabCon, class_name, tabEvent, i) {
  157. var $tab_menu = $(tabBar);
  158. // 初始化操作
  159. $tab_menu.removeClass(class_name);
  160. $(tabBar).eq(i).addClass(class_name);
  161. $(tabCon).hide();
  162. $(tabCon).eq(i).show();
  163. $tab_menu.bind(tabEvent, function () {
  164. $tab_menu.removeClass(class_name);
  165. $(this).addClass(class_name);
  166. var index = $tab_menu.index(this);
  167. $(tabCon).hide();
  168. $(tabCon).eq(index).show()
  169. })
  170. }
  171. $(function () {
  172. $.Huitab("#tab-img .tabBar span", "#tab-img .tabCon", "current", "click", "0");
  173. $(document).on("click", "#online li", function () {
  174. $("#online li").removeClass('selected');
  175. $(this).addClass('selected');
  176. img = $(this).children('img').attr('_src');
  177. $("#online_file").val(img);
  178. });
  179. $("#database_picture").click(function () {
  180. $(".online-picture").css('display', 'none');
  181. $(".database").css('display', 'block');
  182. $(this).addClass('active-btn');
  183. $('#directory_picture').removeClass('active-btn');
  184. });
  185. $("#directory_picture").click(function () {
  186. $(".online-picture").css('display', 'none');
  187. $(".directory").css('display', 'block');
  188. $(this).addClass('active-btn');
  189. $('#database_picture').removeClass('active-btn');
  190. });
  191. });
  192. // 本地上传图片
  193. function uploadLocalImg() {
  194. var layer = $("#layer").val();
  195. if ($("#upload_file").val() == '') {
  196. layer.msg("请选择要上传的文件", {
  197. icon: 6,
  198. time: 1000
  199. });
  200. return false;
  201. } else {
  202. var formData = new FormData($("#form-uploadimg")[0]);
  203. $.ajax({
  204. url: '{:url("file_manager/uploadLocalImg")}',
  205. type: 'POST',
  206. async: true,
  207. cache: false,
  208. data: formData,
  209. processData: false,
  210. contentType: false,
  211. dataType: "json",
  212. beforeSend: function () {
  213. // loadIndex = layer.load();
  214. },
  215. success: function (res) {
  216. if (res.code == 0) {
  217. // layer.close(loadIndex);
  218. if (layer == true) {
  219. var img = res.thumb ? res.thumb : res.picname;
  220. window.parent.$("#" + res.img_id).val(img);
  221. window.parent.$("#view-" + res.img_id).attr('src', img);
  222. layer_close();
  223. } else {
  224. layer.msg('上传成功', {
  225. icon: 1,
  226. time: 1000
  227. }, () => {
  228. window.location.reload();
  229. });
  230. }
  231. } else {
  232. // layer.close(loadIndex);
  233. layer.msg(res.msg, {
  234. icon: 5,
  235. time: 1000
  236. });
  237. return false;
  238. }
  239. }
  240. });
  241. }
  242. }
  243. // 网络图片
  244. function uploadUrlImg() {
  245. var layer = $("#layer").val();
  246. if ($("#url_file").val() == '') {
  247. layer.msg("文件地址不可以为空", {
  248. icon: 6,
  249. time: 1000
  250. });
  251. return false;
  252. } else {
  253. var formData = new FormData($("#form-uploadurlimg")[0]);
  254. $.ajax({
  255. url: '{:url("file_manager/uploadUrlImg")}',
  256. type: 'POST',
  257. async: true,
  258. cache: false,
  259. data: formData,
  260. processData: false,
  261. contentType: false,
  262. dataType: "json",
  263. beforeSend: function () {
  264. // loadIndex = layer.load();
  265. },
  266. success: function (res) {
  267. if (res.code == 0) {
  268. console.log(layer);
  269. // layer.close(loadIndex);
  270. if (layer == true) {
  271. var img = res.picname;
  272. window.parent.$("#" + res.img_id).val(img);
  273. if (res.thumbname) {
  274. img = res.thumbname;
  275. window.parent.$("#thumb").val(img);
  276. }
  277. window.parent.$("#view-" + res.img_id).attr('src', img);
  278. layer_close();
  279. } else {
  280. window.location.reload();
  281. }
  282. } else {
  283. // layer.close(loadIndex);
  284. layer.msg(res.msg, {
  285. icon: 5,
  286. time: 1000
  287. });
  288. return false;
  289. }
  290. }
  291. });
  292. }
  293. }
  294. function uploadOnlineImg() {
  295. var layer = $("#layer").val();
  296. if ($("#online_file").val() == '') {
  297. layer.msg("文件地址不可以为空", {
  298. icon: 6,
  299. time: 1000
  300. });
  301. return false;
  302. } else {
  303. var formData = new FormData($("#form-uploadonlineimg")[0]);
  304. $.ajax({
  305. url: '{:url("file_manager/uploadOnlineImg")}',
  306. type: 'POST',
  307. async: true,
  308. cache: false,
  309. data: formData,
  310. processData: false,
  311. contentType: false,
  312. dataType: "json",
  313. beforeSend: function () {
  314. // loadIndex = layer.load();
  315. },
  316. success: function (res) {
  317. // layer.close(loadIndex);
  318. if (res.code == 0) {
  319. if (layer == true) {
  320. var img = res.picname;
  321. window.parent.$("#" + res.img_id).val(img);
  322. if (res.thumbname) {
  323. img = res.thumbname;
  324. window.parent.$("#thumb").val(img);
  325. }
  326. window.parent.$("#view-" + res.img_id).attr('src', img);
  327. layer_close();
  328. } else {
  329. layer.msg('上传成功', {
  330. icon: 1,
  331. time: 1000
  332. }, () => {
  333. window.location.reload();
  334. });
  335. }
  336. } else {
  337. layer.msg(res.msg, {
  338. icon: 5,
  339. time: 1000
  340. });
  341. return false;
  342. }
  343. }
  344. });
  345. }
  346. }
  347. </script>
  348. <!--请在上方写此页面业务相关的脚本-->