js之图片上传

ops/2024/10/19 23:34:36/

话不多说,直接上干货,注释在代码里面

下面是效果图和代码

<!DOCTYPE html>
<html lang="zh"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"><title>Document</title><style>/* form 表单定位 */.form-upload {width: 200px;height: 200px;border: 1px solid red;margin: 200px auto;position: relative;}/* 相对于form 表单定位 设置提醒文字 位于 第五层 */.form-upload-text {position: absolute;z-index: 5;top: 50%;left: 50%;transform: translate(-50%, -50%);}/* 相对于 form 表单定位 设置 点击范围位于最上层 第十层 */.form-upload-file {position: absolute;z-index: 10;width: 200px;height: 200px;background-color: orange;opacity: 0;}/* 相对于 form 表单 定位设置 位于 文字 与 文件中间展示 第八层 */.form-upload-imgs {position: absolute;z-index: 8;width: 200px;height: 200px;}</style></head><body><form class="form-upload" id="formUpload" action="" method="post" enctype="multipart/form-data"><span class="form-upload-text" id="submitButton">上传图片</span><input type="file" class="form-upload-file" name="image" size="50" onchange="fileChange(this)"><img src="" class="form-upload-imgs" alt=""></form><script>var imgUrl = ''function fileChange(target) {// 点击 input 的时候if (target.tagName === 'INPUT') {// 获取 form 表单的 第一个元素var formData = new FormData($('#formUpload')[0])// 发送 ajax $.ajax({// 类型type: "POST",// url  地址url: "xxxxxxx",// 表单数据data: formData,// 是否异步// async: false,// 请求头设置contentType: false,// processData 默认为true,当设置为true的时候,jquery ajax 提交的时候不会序列化 data,而是直接使用data// 默认情况下会将发送的数据序列化以适应默认的内容类型application/x-www-form-urlencoded// 如果想发送不想转换的的信息的时候需要手动将其设置为falseprocessData: false,// 成功的回调success: function(res) {console.log('图片 ----》 ', res)// 这里是 上传成功后 后台会返回 一个图片的绝对路径imgUrl = res.data.imgUrl// 找到 img 标签设置它的 图片路径$('.form-upload-imgs').attr('src', imgUrl)},// 失败的回调error: function(returndata) {console.log(returndata);}})}}</script></body>
</html>

谢谢大家观看,我是小辉,请大家多多关照


http://www.ppmy.cn/ops/45343.html

相关文章

数据结构初阶 队列

一. 队列的基本介绍 1. 基本概念 队列是基本数据结构的一种 它符合先进先出的原则 我们来看图 大概就是这样子的一种情况 我们想想看 应该用数组还是链表来实现这个结构方便一点呢 我想同学们心里现在肯定已经有了答案了 肯定不是数组 为什么呢&#xff1f; 因为我们如果…

全同态加密生态项目盘点:FHE技术的崛起以及应用

撰文&#xff1a;Chris&#xff0c;Techub News 在当今数字化的时代&#xff0c;隐私保护已成为一个全球性的焦点话题&#xff0c;特别是在加密货币和区块链技术快速发展的背景下。虽然当前的隐私技术在保护数据安全方面多有欠缺&#xff0c;引发了广泛的关注和批评&#xff0c…

JVM学习-垃圾回收(一)

什么是垃圾 垃圾是指在运行程序中没有任何指针指向的对象&#xff0c;这个对象就是需要被回收的垃圾如果不及时对内存的垃圾进行清理&#xff0c;垃圾对象所占用的内存空间会一直保留到应用程序结束&#xff0c;被保留的空间无法被其它对象所用&#xff0c;甚至可能导致内存溢…

【MySQL数据库】 MySQL主从复制

MySQL主从复制 MySQL主从复制主从复制与读写分离的意义主从数据库实现同步&#xff08;主从复制&#xff09;三台mysql服务器搭建主从复制&#xff0c;要求不可以用root帐号同步&#xff0c;要求第三台服务器在测试过1、2的主从复制之后进行主从复制配置四台mysql服务器(m1,s1,…

力扣:104. 二叉树的最大深度

104. 二叉树的最大深度 给定一个二叉树 root &#xff0c;返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;3示例 2&#xff1a; 输入&#xff1a…

同比和环比

1、概述 同比和环比是两种常见的数据分析方法&#xff0c;用于衡量数据在不同时间段的变化情况。通过同比和环比的计算&#xff0c;可以更清晰地了解数据在不同时间段的增长或下降情况&#xff0c;从而为决策提供依据。 2、同比 同比&#xff08;Year-on-Year, YoY&#xff09…

【Docker】2、配置SSL证书远程访问Docker

1、使用 openssl 生成 ca 1、创建文件夹 mkdir -p /root/dockercd /root/docker2、创建 RSA 私钥 会提示 2 次输入证书密码&#xff0c;至少 4 位&#xff0c;创建后会生成一个 ca-key.pem 文件 openssl genrsa -aes256 -out ca-key.pem 4096得到 ca-key.pem 文件 3、创建…

Javascript 位运算符(,|,^,<<,>>,>>>)

文章目录 一、什么是位运算&#xff1f;二、如何使用1. 位与&#xff08;AND&#xff09;&#xff1a;&用途&#xff08;1&#xff09;数据清零&#xff08;2&#xff09;判断奇偶 2. 位或&#xff08;OR&#xff09;&#xff1a;|用途&#xff08;1&#xff09;向下取整 3…