该上传图片不用其余库,只用借助jquery.js便可,但页面须要html5标准html
<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="">html5
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;
}
}
});
}jquery
function onprogress(evt)
{
var loaded = evt.loaded; //已经上传大小状况
var tot = evt.total; //附件总大小
var per = Math.floor(100*loaded/tot); //已经上传的百分比
$("#per").val( per +"%" );
}ajax