Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

js formdata上传文件

作者:冷言寡语   发布日期:2025-04-05   浏览:69

// 创建一个 FormData 对象
let formData = new FormData();

// 假设你有一个文件输入框,其 ID 为 'fileInput'
let fileInput = document.getElementById('fileInput');

// 将文件添加到 FormData 对象中
formData.append('file', fileInput.files[0]);

// 创建 XMLHttpRequest 对象
let xhr = new XMLHttpRequest();

// 设置上传的 URL
xhr.open('POST', '/upload', true);

// 设置请求完成后的回调函数
xhr.onload = function() {
    if (xhr.status === 200) {
        console.log('文件上传成功');
    } else {
        console.error('文件上传失败');
    }
};

// 发送请求,并将 FormData 对象作为数据发送
xhr.send(formData);

解释说明:

  1. FormData 对象FormData 是一个内置对象,用于构造键值对的数据集,通常用于表单数据的提交。它可以轻松地将文件和其他表单数据一起上传。
  2. 获取文件:通过 document.getElementById('fileInput').files[0] 获取用户选择的第一个文件。
  3. append 方法:使用 formData.append('file', fileInput.files[0]) 将文件添加到 FormData 对象中,其中 'file' 是服务器端接收文件时的名称。
  4. XMLHttpRequest 对象:创建并配置 XMLHttpRequest 对象来发送 POST 请求。
  5. 设置上传 URL:使用 xhr.open('POST', '/upload', true) 指定上传的目标 URL。
  6. 设置回调函数:使用 xhr.onload 设置请求完成后的回调函数,检查响应状态码以确定上传是否成功。
  7. 发送请求:使用 xhr.send(formData) 发送包含文件数据的请求。

这样就可以实现文件的上传功能。

上一篇:js drawimage

下一篇:nodejs 引入js文件

大家都在看

js 数组对象排序

js 数组删掉第一个值

js fill

js 数组复制

js 复制数组

js 数组拷贝

js 对象转数组

js 深拷贝数组

js 获取今天年月日

js jsonp

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站