ajax上传图片,html5

该上传图片不用其余库,只用借助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

相关文章
相关标签/搜索