C# 文件上传

时间:2025-02-07 09:50:20
<script> var imgFile = []; //文件流 var imgSrc = []; //图片路径 var imgName = []; //图片名字 var imgId = [];//后端返回的图片主键 let imageList = @Html.Raw(Json.Encode(@ViewBag.Image)); if (imageList.length > 0) { console.info(imageList) for (var item = 0; item < imageList.length; item++) { imgSrc.push(imageList[item].PictureUrl); imgId.push(imageList[item].Id); //下面两个字段随便存啥,只有与后端返回的数组长度一致即可,用于占位方便前端的假删除 imgFile.push(imageList[item].Id); imgName.push(imageList[item].Id); } var imgBox = '.content-img-list'; addNewContent(imgBox); console.log("=====赋值后", imgSrc) console.log("=====赋值后图片id", imgId) } else {//只有当后台存在数据才显示打印 var div = document.getElementById("printPic"); div.setAttribute("style", "display:none"); } $(function () { // 鼠标经过显示删除按钮 $('.content-img-list').on('mouseover', '.content-img-list-item', function () { $(this).children('div').removeClass('hide'); }); // 鼠标离开隐藏删除按钮 $('.content-img-list').on('mouseleave', '.content-img-list-item', function () { $(this).children('div').addClass('hide'); }); // 单个图片删除 $(".content-img-list").on("click", '.content-img-list-item a .gcllajitong', function () { var index = $(this).parent().parent().parent().index(); console.log("触发删除==》", index) if (imgId.length > 0) {//证明存在后端图片 console.log("存在需要删除的后端图片") if (imgId[index]) { console.log("执行删除后端") removeImg(imgId[index], index) } } console.log("执行删除前端") imgSrc.splice(index, 1); imgFile.splice(index, 1); imgName.splice(index, 1); var boxId = ".content-img-list"; addNewContent(boxId); }); $(".content-img-list").on("click", '.content-img-list-item a .gclfangda', function () { var index = $(this).parent().parent().parent().index(); $(".modal-content").html(""); var bigimg = $(".modal-content").html(); $(".modal-content").html(bigimg + '<div class="show"><img src="' + imgSrc[index] + '" alt="" style="width:96%;height:100%"><div>'); }); }); //图片上传 $('#upload').on('change', function (e) { var imgSize = this.files[0].size; if (imgSize > 1024 * 1024 * 1) { //1024kb*1024K=1M return alert("上传图片不能超过1M"); }; if (this.files[0].type != 'image/png' && this.files[0].type != 'image/jpeg' && this.files[0].type != 'image/gif') { return alert("图片上传格式不正确"); } var imgBox = '.content-img-list'; var fileList = this.files; for (var i = 0; i < fileList.length; i++) { var imgSrcI = getObjectURL(fileList[i]); imgName.push(fileList[i].name); imgSrc.push(imgSrcI); imgFile.push(fileList[i]); } addNewContent(imgBox); this.value = null; //上传相同图片 }); //提交请求 $('#btn-submit-upload').on('click', function () { // FormData上传图片 var formFile = new FormData(); // 遍历图片imgFile添加到formFile里面 $.each(imgFile, function (i, file) { formFile.append('myFile['+i+']', file); }); $.ajax({ url: '/T_TaskMian/AddFile?Pid='+@ViewBag.PId, type: 'POST', data: formFile, async: true, cache: false, contentType: false, processData: false, dataType: 'json', success: function (res) { console.log(res); if (res.data == 200) { alert("保存成功") location.reload(); //$("#adviceContent").val(""); // $("#contact").val(""); } else { alert(res.msg); location.reload(); //$('.content-img .file').show(); //$("#adviceContent").val(""); //$("#cotentLength").text("0/240"); //$("#contact").val(""); //imgSrc = []; imgFile = []; imgName = []; //addNewContent(".content-img-list"); } } }) }); //删除后端 function removeImg(obj, index) { $.ajax({ url: '/T_TaskMian/DeleteFile?Id='+obj, type: 'GET', async: true, cache: false, contentType: false, processData: false, success: function (res) { console.log(res); if (res.data == 200) { alert("成功删除!") location.reload(); } else { alert(res.msg); location.reload(); } } }); } //图片展示 function addNewContent(obj) { // (imgSrc) $(obj).html(""); for (var a = 0; a < imgSrc.length; a++) { var oldBox = $(obj).html(); $(obj).html(oldBox + '<li class="content-img-list-item"><img src="' + imgSrc[a] + '" alt="">' + '<div class="hide"><a index="' + a + '" class="delete-btn"><i class="gcl gcllajitong"></i></a>' + '<a index="' + a + '" class="big-btn" type="button" data-toggle="modal" data-target=".bs-example-modal-lg"><i class="gcl gclfangda"></i></a></div></li>'); } } //建立可存取到file的url function getObjectURL(file) { var url = null; if (window.createObjectURL != undefined) { // basic url = window.createObjectURL(file); } else if (window.URL != undefined) { // mozilla(firefox) url = window.URL.createObjectURL(file); } else if (window.webkitURL != undefined) { // webkit or chrome url = window.webkitURL.createObjectURL(file); } return url; } </script>