该上传图片不用其他库,只用借助jquery.js即可,但页面需要html5标准
<form id="fileForm" enctype="multipart/form-data">
<input type="file" name="showImg" id="pic">
</form>
<input type="button" value="file" onclick="uploadFile()">
<input type="text" id="per" value="">
<input type="text" id="name" value="">
function uploadFile()
{
var formData = new FormData($("#fileForm")[0]);
formData.append("file",pic);
$.ajax({
type: "POST",
url: "/company/uploadImg.do",
data: formData,//这里上传的数据使用了formData 对象
processData : false,
//必须false才会自动加上正确的Content-Type
contentType : false,
//这里我们先拿到jQuery产生的 XMLHttpRequest对象,为其增加 progress 事件绑定,然后再返回交给ajax使用
cache: false,
success: function (obj)
{
$("#name").val(obj);
},
xhr: function()
{
var xhr = $.ajaxSettings.xhr();
if(onprogress && xhr.upload)
{
xhr.upload.addEventListener("progress",onprogress,false);
return xhr;
}
}
});
}
function onprogress(evt) { var loaded = evt.loaded; //已经上传大小情况 var tot = evt.total; //附件总大小 var per = Math.floor(100*loaded/tot); //已经上传的百分比 $("#per").val( per +"%" ); }