欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 幼教 > 原生html点击按钮上传文件(隐藏file输入框)

原生html点击按钮上传文件(隐藏file输入框)

2024/10/24 4:52:22 来源:https://blog.csdn.net/weixin_68658847/article/details/140499831  浏览:    关键词:原生html点击按钮上传文件(隐藏file输入框)
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>html文件上传(隐藏输入框版本)</title></head><body><button>点击上传文件</button><input type="file" name="" id="" hidden /><script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script><script>let btn = document.querySelector("button");let input = document.querySelector("input");btn.onclick = function() {input.click();};input.onchange = async function() {var file = input.files[0]; // 获取文件对象if (!file) {console.log("请选择图片");return;}if (!file.type.startsWith("image")) {console.log("只能上传图片");file = null;return;}console.log("file", file);var formData = new FormData();formData.append("file", file); // 添加文件到formData对象// 其它参数formData.append("venue_id", this.$route.params.venue_id);formData.append("type", "logo");formData.append("user_id", this.user_id);// formData本质就是一个大对象,如果使用了formData,就直接把formData对象传给后台即可,需要什么参数直接在formData对象中添加即可// 如果直接使用formData作为数据传的话,如{file:foreData,venue_id:this.$route.params.venue_id} 会导致后台接收不到venue_id,并且接收到的file也是空对象// 上传图片let res = await axios.post("/ptpro/Publicpush/uploadImage", formData, {headers: {"Content-Type": "multipart/form-data",},});console.log("res", res);};</script></body>
</html>

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com