1. 程式人生 > >前端接受文件調用後臺上傳文件的方法

前端接受文件調用後臺上傳文件的方法

失敗 jquery ice error: form col asp .com esp

需要用到

slice() 方法

參考

http://www.w3school.com.cn/jsref/jsref_slice_array.asp

前端HTML使用標簽是

type=file的input標簽,可以直接選擇文件上傳

JS:

 function () {
        var file = $("#SelectImageFile")[0].files[0];
        var fileName = file.name;
        var fileSplitSize = 1 * 1024 * 1024;  //文件分段大小5M
        var size = file.size;
        
var posturl = postWebUrl;//上傳文件的後臺方法地址 var formData = new FormData(); var index1 = fileName.lastIndexOf("."); var index2 = fileName.length; var suffix = fileName.substring(index1, index2);//後綴名 //如果需要限制後綴名,可以這麽寫 if (suffix != ".rar" && suffix != ".zip" && suffix != ".7z") { msg(
"上傳的影像信息必須為.rar,.zip,.7z格式"); } else { formData.append("file", file.slice(start, start +fileSplitSize)); formData.append("name", fileName); $.ajax({ url: posturl, type: ‘POST‘, data: formData, // 告訴jQuery不要去處理發送的數據
processData: false, // 告訴jQuery不要去設置Content-Type請求頭 contentType: false, beforeSend: function () { //console.log("正在進行,請稍候"); }, //分段上傳,1-5上傳成功後,再上傳6-11,以此類推,成功後,給出提示,在成功之前,會一直顯示上傳進度 success: function (data) { $("#process").show();//進度條顯示 if (start + fileSplitSize >= size) { $("#spnProcessShow").css("width", "100%"); $("#spnProcessText").html("上傳完成,已上傳100%"); } else { start += fileSplitSize; Percentage = Math.round(start / size * 100); $("#spnProcessShow").css("width", Percentage + "%"); $("#spnProcessText").html("正在上傳,已上傳" + Percentage + "%"); } }, error: function (data) { start = 0; $("#process").hide();//隱藏進度條 $("#spnProcessShow").css("width", "0%"); $("#lblMsg").html("影像上傳失敗"); } }); } }

前端接受文件調用後臺上傳文件的方法