色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

jquery ajax 上傳files

錢浩然2年前7瀏覽0評論

jQuery是一款非常常用的JavaScript庫,它允許開發(fā)者更加方便地操作DOM、進行AJAX交互等

在開發(fā)Web應(yīng)用過程中,我們經(jīng)常需要允許用戶上傳文件。jQuery也提供了方便的方法').append($('')).appendTo('body').ajaxSubmit({ url: '/upload', type: 'POST', success: function(data) { console.log('upload success'); }, error: function(xhr, err) { console.log(err); } });

ajaxSubmit()jQuery Form Plugin提供的方法,它將整個表單以AJAX方式提交,并且支持文件上傳。我們需要在form標簽中設(shè)置enctype為multipart/form-data,然后添加文件input,接著調(diào)用ajaxSubmit方法即可

當然,我們還可以使用jQuery的低級接口來手動實現(xiàn)AJAX上傳:

var fileInput = document.querySelector('input[name="file"]');
var formData = new FormData();
formData.append('file', fileInput.files[0]);
var xhr = new XMLHttpRequest();
xhr.open('POST', '/upload');
xhr.onload = function() {
console.log('upload success');
};
xhr.onerror = function() {
console.log('upload error');
};
xhr.upload.onprogress = function(event) {
console.log('upload progress', event.loaded / event.total);
};
xhr.send(formData);

FormData是H5中提供的一種新的數(shù)據(jù)類型,它可以方便地構(gòu)建需要上傳的FormData對象。我們需要添加文件到FormData對象中,然后使用XMLHttpRequest來向服務(wù)器發(fā)送該對象。XMLHttpRequest提供了onload、onerror、upload.onprogress等事件,可以方便地監(jiān)聽上傳的狀態(tài)

綜上,jQuery提供了非常方便的方法實現(xiàn)文件上傳。我們可以選擇使用jQuery Form Plugin來簡潔地實現(xiàn),也可以手動實現(xiàn)AJAX上傳