JavaScript 结合 jQuery 实现异步文件上传
作者:拾光时间:2026-10-22 05:33:07浏览:564
本文介绍使用 JavaScript 和 jQuery 实现文件异步上传的完整代码。通过监听文件选择事件,利用 FormData 对象封装文件数据,并借助 XMLHttpRequest 发送 POST 请求,完成图片文件的无刷新上传处理。
HTML 表单结构
HTML 部分构建上传表单,设置 enctype 为 multipart/form-data 以支持文件传输,指定提交地址和方法,并包含一个接受图片类型的文件输入控件。
<form action="url" enctype="multipart/form-data" id="myform" method="post">
<input accept="image/*" id="addfile" type="file" />
</form>
JavaScript 异步上传逻辑
jQuery 代码监听文件输入框的 change 事件。当用户选择文件后,获取文件对象并创建 FormData 实例,将表单数据及选中的文件追加到 FormData 中。随后初始化 XMLHttpRequest 对象,绑定加载完成和错误处理回调,配置 POST 请求并发送数据。
$("#addfile").on('change', function () {
var f = $(this).get(0).files[0];
var form = document.getElementById('myform');
var formData = new FormData(form);
formData.append('Filedata', f);
var xhr = new XMLHttpRequest();
xhr.addEventListener("load", uploadComplete, false);
xhr.addEventListener("error", uploadFailed, false);
xhr.open('POST', form.action);
xhr.send(formData);
});
function uploadComplete(evt)
{
var data=evt.target.responseText
}
function uploadFailed()
{
alert("上传失败!请重试!");
}
上述内容展示了 JavaScript 异步上传图片文件的具体实现方式,旨在提供实用的代码参考。若读者在使用过程中遇到疑问,欢迎留言交流,作者将及时回复。感谢对本站的支持。
作者最新文章
JS处理含Emoji或中文的字符串转数组乱码问题
2026-11-05 16:12:28
JS怎么使用展开运算符合并对象
2026-11-05 14:42:18
ES6+环境下判断JS对象为空的简洁写法
2026-11-05 12:12:23
怎么通过replacer函数自定义JS中JSON的格式化输出
2026-11-05 11:19:44
JS正则表达式基础:字面量与RegExp构造函数的区别及常用元字符
2026-11-05 11:16:58
