多文件上传、单文件上传、图片上传(支持word、pdf、excel、.jpg、txt等文件上传)

1. 图片上传

>>>>>>>>>>>>>>>>>>>> 效果图

>>>>>>>>>>>>>>>>>>>> js 实现

<!doctype html>
<html lang="en"><head><meta charset="UTF-8"><meta name="Generator" content="EditPlus®"><meta name="Author" content=""><meta name="Keywords" content=""><meta name="Description" content=""><title>Document</title><!-- 记得导入相关的js--><link rel="stylesheet" href="layui.css"  media="all"><script src="layui.js" charset="utf-8"></script><script src="layui.all.js" charset="utf-8"></script></head><body><fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;"><legend>常规使用:普通图片上传</legend>
</fieldset><div class="layui-upload"><button type="button" class="layui-btn" id="test1">上传图片</button><div class="layui-upload-list"><img class="layui-upload-img" id="demo1" alt="" width="100px" height="100px"><p id="demoText"></p></div>
</div>   <script>
layui.use('upload', function(){var $ = layui.jquery,upload = layui.upload;//普通图片上传var uploadInst = upload.render({elem: '#test1',url: 'https://httpbin.org/post' //改成您自己的上传接口,before: function(obj){//预读本地文件示例,不支持ie8obj.preview(function(index, file, result){$('#demo1').attr('src', result); //图片链接(base64)});},done: function(res){//如果上传失败if(res.code > 0){return layer.msg('上传失败');}//上传成功},error: function(){//演示失败状态,并实现重传var demoText = $('#demoText');demoText.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-xs demo-reload">重试</a>');demoText.find('.demo-reload').on('click', function(){uploadInst.upload();});}});});
</script></body>
</html>

2. 文件上传(支持 .word、.pdf、.xls、.txt )

>>>>>>>>>>>>>>>>>>>> 效果图

>>>>>>>>>>>>>>>>>>>> js实现

<!doctype html>
<html lang="en"><head><meta charset="UTF-8"><meta name="Generator" content="EditPlus®"><meta name="Author" content=""><meta name="Keywords" content=""><meta name="Description" content=""><title>Document</title><!-- 注:记得导入js哈--><link rel="stylesheet" href="layui.css"  media="all"><script src="layui.js" charset="utf-8"></script><script src="layui.all.js" charset="utf-8"></script></head><body>
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;"><legend>高级应用:制作一个多文件列表</legend>
</fieldset> <div class="layui-upload"><button type="button" class="layui-btn layui-btn-normal" id="testList">选择多文件</button> <button type="button" class="layui-btn" id="testListAction">开始上传</button><div class="layui-upload-list"><table class="layui-table"><thead><tr><th>文件名</th><th>大小</th><th>状态</th><th>操作</th></tr></thead><tbody id="demoList"></tbody></table></div>
</div> 
<!-- 注意:如果你直接复制所有代码到本地,上述js路径需要改成你本地的 -->
<script>
layui.use('upload', function(){var $ = layui.jquery,upload = layui.upload;//普通图片上传var uploadInst = upload.render({elem: '#test1',url: 'https://httpbin.org/post' //改成您自己的上传接口,before: function(obj){//预读本地文件示例,不支持ie8obj.preview(function(index, file, result){$('#demo1').attr('src', result); //图片链接(base64)});},done: function(res){//如果上传失败if(res.code > 0){return layer.msg('上传失败');}//上传成功},error: function(){//演示失败状态,并实现重传var demoText = $('#demoText');demoText.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-xs demo-reload">重试</a>');demoText.find('.demo-reload').on('click', function(){uploadInst.upload();});}});//多图片上传upload.render({elem: '#test2',url: 'https://httpbin.org/post' //改成您自己的上传接口,multiple: true,before: function(obj){//预读本地文件示例,不支持ie8obj.preview(function(index, file, result){$('#demo2').append('<img src="'+ result +'" alt="'+ file.name +'" class="layui-upload-img">')});},done: function(res){//上传完毕}});//指定允许上传的文件类型upload.render({elem: '#test3',url: 'https://httpbin.org/post' //改成您自己的上传接口,accept: 'file' //普通文件,done: function(res){layer.msg('上传成功');console.log(res);}});upload.render({ //允许上传的文件后缀elem: '#test4',url: 'https://httpbin.org/post' //改成您自己的上传接口,accept: 'file' //普通文件,exts: 'zip|rar|7z' //只允许上传压缩文件,done: function(res){layer.msg('上传成功');console.log(res)}});upload.render({elem: '#test5',url: 'https://httpbin.org/post' //改成您自己的上传接口,accept: 'video' //视频,done: function(res){layer.msg('上传成功');console.log(res)}});upload.render({elem: '#test6',url: 'https://httpbin.org/post' //改成您自己的上传接口,accept: 'audio' //音频,done: function(res){layer.msg('上传成功');console.log(res)}});//设定文件大小限制upload.render({elem: '#test7',url: 'https://httpbin.org/post' //改成您自己的上传接口,size: 60 //限制文件大小,单位 KB,done: function(res){layer.msg('上传成功');console.log(res)}});//同时绑定多个元素,并将属性设定在元素上upload.render({elem: '.demoMore',before: function(){layer.tips('接口地址:'+ this.url, this.item, {tips: 1});},done: function(res, index, upload){var item = this.item;console.log(item); //获取当前触发上传的元素,layui 2.1.0 新增}})//选完文件后不自动上传upload.render({elem: '#test8',url: 'https://httpbin.org/post' //改成您自己的上传接口,auto: false//,multiple: true,bindAction: '#test9',done: function(res){layer.msg('上传成功');console.log(res)}});//拖拽上传upload.render({elem: '#test10',url: 'https://httpbin.org/post' //改成您自己的上传接口,done: function(res){layer.msg('上传成功');layui.$('#uploadDemoView').removeClass('layui-hide').find('img').attr('src', res.files.file);console.log(res)}});//多文件列表示例var demoListView = $('#demoList'),uploadListIns = upload.render({elem: '#testList',url: 'https://httpbin.org/post' //改成您自己的上传接口,accept: 'file',multiple: true,auto: false,bindAction: '#testListAction',choose: function(obj){   var files = this.files = obj.pushFile(); //将每次选择的文件追加到文件队列//读取本地文件obj.preview(function(index, file, result){var tr = $(['<tr id="upload-'+ index +'">','<td>'+ file.name +'</td>','<td>'+ (file.size/1024).toFixed(1) +'kb</td>','<td>等待上传</td>','<td>','<button class="layui-btn layui-btn-xs demo-reload layui-hide">重传</button>','<button class="layui-btn layui-btn-xs layui-btn-danger demo-delete">删除</button>','</td>','</tr>'].join(''));//单个重传tr.find('.demo-reload').on('click', function(){obj.upload(index, file);});//删除tr.find('.demo-delete').on('click', function(){delete files[index]; //删除对应的文件tr.remove();uploadListIns.config.elem.next()[0].value = ''; //清空 input file 值,以免删除后出现同名文件不可选});demoListView.append(tr);});},done: function(res, index, upload){if(res.files.file){ //上传成功var tr = demoListView.find('tr#upload-'+ index),tds = tr.children();tds.eq(2).html('<span style="color: #5FB878;">上传成功</span>');tds.eq(3).html(''); //清空操作return delete this.files[index]; //删除文件队列已经上传成功的文件}this.error(index, upload);},error: function(index, upload){var tr = demoListView.find('tr#upload-'+ index),tds = tr.children();tds.eq(2).html('<span style="color: #FF5722;">上传失败</span>');tds.eq(3).find('.demo-reload').removeClass('layui-hide'); //显示重传}});//绑定原始文件域upload.render({elem: '#test20',url: 'https://httpbin.org/post' //改成您自己的上传接口,done: function(res){layer.msg('上传成功');console.log(res)}});
});
</script></body>
</html>

3. 文件上传带上传的进度条

>>>>>>>>>>>>>>>>>>>> 效果图

>>>>>>>>>>>>>>>>>>>> js 实现

<!doctype html>
<html lang="en"><head><meta charset="UTF-8"><meta name="Generator" content="EditPlus®"><meta name="Author" content=""><meta name="Keywords" content=""><meta name="Description" content=""><title>Document</title><!-- 文件上传 start --><link href="css/iconfont.css" rel="stylesheet" type="text/css"/><link href="css/fileUpload.css" rel="stylesheet" type="text/css"><script src="jquery/2.1.1/jquery.min.js"></script><script type="text/javascript" src="js/fileUpload.js"></script><!-- 文件上传 end  --></head><body style=""><h3>关于文件上传的基本演示</h3><div id="fileUploadContent" class="fileUploadContent" isupload="true"></div><script type="text/javascript">let wfu = new WpFileUpload("fileUploadContent");wfu.initUpload({"uploadUrl":"#",//上传文件信息地址"progressUrl":"#",//获取进度信息地址,可选,注意需要返回的data格式如下({bytesRead: 102516060, contentLength: 102516060, items: 1, percent: 100, startTime: 1489223136317, useTime: 2767})"scheduleStandard":true,"showSummerProgress":true,"showFileItemProgress":true,"ismultiple":true,"selfUploadBtId":"selfUploadBt"});function testUpload(){wfu.upload();}function getFormData1(){var formData = wfu.getFormData("myform");alert(JSON.stringify(formData));}function getFormData2(){var formData = wfu.getFormDataOfUploadFile("myform");alert(JSON.stringify(formData));}
</script><input id="fileUploadContent_file" type="file" style="visibility:hidden" multiple="multiple" /><input id="fileUploadContent_file" type="file" style="visibility:hidden" multiple="multiple" /><input id="fileUploadContent_file" type="file" style="visibility:hidden" multiple="multiple" /><input id="fileUploadContent_file" type="file" style="visibility:hidden" multiple="multiple" />
</body>
</html>

4. 注意

上面的Dome用的js,我有上传到CSDN,但是要积分;或者你可以到网上下载这些js;都可以找的到的;不难的哈;

上面用的 js 和Dome 上传到CSDN啦!;资源地址

https://download.csdn.net/download/LMGD_/12355003

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/36796.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

我为什么放弃了 LangChain?

如果你关注了过去几个月中人工智能的爆炸式发展&#xff0c;那你大概率听说过 LangChain。 简单来说&#xff0c;LangChain 是一个 Python 和 JavaScript 库&#xff0c;由 Harrison Chase 开发&#xff0c;用于连接 OpenAI 的 GPT API&#xff08;后续已扩展到更多模型&#x…

chatgpt赋能python:Python小动画代码——给你的网站增加生动趣味!

Python小动画代码 —— 给你的网站增加生动趣味&#xff01; Python作为一种高级编程语言&#xff0c;在数据分析、机器学习、Web开发等领域应用广泛。不过&#xff0c;你可能不知道Python还可以用来编写小动画。今天&#xff0c;我们将通过一些示例介绍Python小动画代码&…

Forefront GPT-4免费版:开启无限畅聊时代,乐享人工智能快感,无限制“白嫖”,还能和N多角色一起聊天?赶紧注册,再过些时间估计就要收费了

目录 前言注册登录方式应用体验聊天体验绘图体验 “是打算先免费后收费吗&#xff1f;”建议其它资料下载 前言 近期&#xff0c;人工智能技术迎来重大飞跃&#xff0c;OpenAI的ChatGPT等工具成为全球数亿人探索提高生产力和增强创造力的新方法。人们现在可以使用人工智能驱动…

英语c开头语言,61句C开头的英语谚语带翻译

1、Call a spade a spade. 据实而言。 2、Call me not olive till thou see me gathered. 盖棺论定。 3、Call no man happy until he dies. 盖棺才能定论。 4、Can the leopard change his spots? 江山易改,本性难移。 5、Care and diligence bring luck. 谨慎和勤奋,带来好…

文学-谚语-英文谚语:英文谚语

ylbtech-文学-谚语-英文谚语&#xff1a;英文谚语 英语谚语指流传于英国和美国的比较简练而且言简意赅的话语。英语谚语有一部分来自书面文献&#xff0c;主要出自希腊罗马神话、寓言故事、莎士比亚戏剧以及一些名家作品中。 1.返回顶部 1、 中文名&#xff1a;英语谚语 外文名…

什么是量化交易?量化交易都有哪些主要的策略模型?

量化交易是指以先进的数学模型替代人为的主观判断&#xff0c;利用计算机技术从庞大的历史数据中海选能带来超额收益的多种“大概率”事件以制定策略&#xff0c;极大地减少了投资者情绪波动的影响&#xff0c;避免在市场极度狂热或悲观的情况下作出非理性的投资决策。 量化交…

建立量化交易趋势跟踪策略的五个指标

趋势跟踪策略是您只需顺势而为的策略&#xff0c;即在价格上涨时买入&#xff0c;在价格开始下跌时卖出。在趋势跟踪策略中&#xff0c;人们的目标不是预测或预测&#xff0c;而只是关注市场上的任何新兴趋势。 我们谈论&#xff1a; 趋势是如何出现的&#xff1f;如何实施趋…

英华学堂网课助手Linux版本

首先我们下去GitHub把文件下载下来记得 脚本地址&#xff1a; https://github.com/aoaostar/mooc/releases/latest 这几个版本随便下哪个都可以&#xff0c;下载完之后我们通过xftp上传到服务器上并加压 接下来我们通过xshell工具到该目录下编辑config.json文件 cd /www/aoa…

向凯文·凯利提问:未来 5000 天我们将走向何处?

ChatGPT 的问世不禁让人遐想&#xff0c;接下来的 5000 天&#xff0c;将会发生什么事&#xff1f; 硅谷精神之父、世界互联网教父、《失控》《必然》的作者凯文凯利&#xff08;Kevin Kelly&#xff0c;以下简称 K.K.&#xff09;是这样预测的&#xff1a; 未来将会是一切都与…

AI 影评家/ 用 Hugging Face 模型打造一个电影评分机器人

本文为社区成员 Jun Chen 为 百姓 AI 和 Hugging Face 联合举办的黑客松所撰写的教程文档&#xff0c;欢迎你阅读今天的第二条推送了解和参加本次黑客松活动。文内含有较多链接&#xff0c;我们不再一一贴出&#xff0c;请 点击这里 查看渲染后的 Notebook 文件。 随着人工智能…

自动驾驶技术的优势、局限性及未来发展趋势

&#x1f64f;如果这篇文章对你有帮助还请收藏点赞关注&#x1f64f; 推荐Mqtt相关文章&#xff08;也许能帮到你&#xff09; 《解决微信小程序MQTT真机连接问题与合法域名配置SSL问题》 《解决微信小程序MQTT通讯真机调试失败的问题附加可用代码》 《Esp8266-01s、51单片机实…

chatgpt赋能python:Python代码写在同一行的优势和劣势

Python代码写在同一行的优势和劣势 在Python编程中&#xff0c;有一种常见的做法是将多行代码合成一行进行编写&#xff0c;这种方式被称为代码行连接。这种写法虽然看起来更简洁、紧凑&#xff0c;但是使用不当也可能导致阅读和维护的难度增加。本文将从优势和劣势两个方面介…

chatgpt赋能python:用Python参加比赛,让你快速提升编程能力!

用Python参加比赛&#xff0c;让你快速提升编程能力&#xff01; Python已经成为了计算机领域非常流行的编程语言。它的简单易学、安全高效、可移植性强等特点对于编程初学者非常友好。除此之外&#xff0c;Python还有强大的科学计算库和数据分析工具&#xff0c;用于数据处理…

4月书讯!15本新书闭眼入!

书可以带着你的心灵旅行&#xff0c;走最远的旅行。每天看一本书&#xff0c;一年下来&#xff0c;别人与你就有 365 本书的差距。通过学习建立自己的风格与专业&#xff0c;把自己当作一项事业&#xff0c;当成个人品牌在经营&#xff0c;创造自己名字的价值&#xff0c;帮自己…

python成语填空的实验报告怎么写[实习报告]

大家好&#xff0c;小编来为大家解答以下问题python成语填空的实验报告怎么写&#xff0c;一个有趣的事情&#xff0c;一个有趣的事情&#xff0c;现在让我们一起来看看吧&#xff01; 1、实习报告结束语怎么写&#xff01; 实习报告结束语写作思路&#xff1a;与开头一样&…

在HR眼里,IE证书早就不值钱了

大家好&#xff0c;我是老杨。 最近项目实在是忙&#xff0c;内容都写的少了一些&#xff0c;真的是有点力不从心的意思&#xff0c;人年纪大了&#xff0c;比不起当初年轻的自己了 和同事领导在一块儿的时间越多&#xff0c;就免不了聊到今年的就业环境。 我不提&#xff0…

软件工程3.0前传:AI赋能软件研发

今年是软件工程3.0的元年&#xff0c;软件工程3.0宣言也已发布&#xff0c;其软件新范式是ML-DevOps&#xff08;机器学习驱动研发和运维&#xff09;&#xff0c;更准确地说是LLM-DevOps&#xff1a;大模型驱动开发、大模型驱动运维&#xff0c;但是ML模型包含了大模型&#x…

点燃通用人工智能的火花: GPT-4的早期实验

来源&#xff1a;Mindverse Research 今天介绍的这篇文章提供了对 GPT-4 早期版本的研究报告。作者认为&#xff0c;GPT-4 比 ChatGPT 以及其他相关 LLMs 表现出更多的通用智能。作者发现&#xff0c;除了对语言的掌握&#xff0c;GPT-4 还可以解决横跨数学、编码、视觉、医学、…

激发数学思维:GPT-4实证研究探索挑战性数学问题

深度学习自然语言处理 原创作者&#xff1a;wkk 考虑到自然语言在许多科学和工程领域表达的数学问题的丰富性&#xff0c;使用大语言模型(LLM)来解决数学问题是一项有趣的研究工作。今天给大家介绍一篇微软研究院联合欧美高校关于如何使用GPT-4解决数学问题的研究论文。 之前…

深度学习实战4-卷积神经网络(DenseNet)数学图形识别+题目模式识别

文章目录 一、前期工作 导入库数据集加载 二、构建CNN模型 三、训练过程曲线函数 四、训练模型函数 五、训练模型与结果 六、验证 大家好&#xff0c;今天给大家带来一个卷积神经网络&#xff08;CNN&#xff09;数学图形识别项目(简单入门版)&#xff0c;这个是人工智能解题…