JS文件上传/下载(代码实例)
程序员文章站
2023-11-12 18:39:40
项目需要 文件上传/下载 想用一个轻量级的框架,但是在网上搜索都没有找到于是想自己手写一个,但是由于限制不允许获取本地路径(ie除外)所以还是用了框架 ajaxfileupload 超轻量级的
js...
项目需要 文件上传/下载 想用一个轻量级的框架,但是在网上搜索都没有找到于是想自己手写一个,但是由于限制不允许获取本地路径(ie除外)所以还是用了框架 ajaxfileupload 超轻量级的
jsp文件
<tr> <td>上传附件:</td> <td colspan="3"> <!-- 提交所用到的表单 --> <form> <!-- 显示上传文件名的文本框 disabled="value" 设置文本框为只读--> <input type="text" disabled="value" name="uploadfile" id="uploadfile" style="width:300px;" class="float" > <!-- file 框(原生的太难看,还改变不了样式,所以隐藏掉) 设置的onchange是为了实现自动上传(自动触发ajax) --> <input type="file" name="upload_file" id="upload_file" style="display:none" onchange="changevalue(this);"/> </form> <!-- 调取file 框的点击事件 --> <a href="#" onclick="ll()"> <!-- 把一个图片当作按钮显示,主要作用就是好看点 --> <img src="images/jyxc_butll.jpg" type="submit" width="57" height="30" class="jyxc_butll"> <!-- 浏览 --> </a> </td> </tr>
js
//调用file框的点击事件 function ll(){ upload_file.click(function(){}) } //change事件 function changevalue(e){ var file = e.files[0]; var path=e.value //给文本框设置文件名称 $("#uploadfile").val(file.name); // 获取filelist的第一个元素 $.ajaxfileupload({ url:,//用于文件上传的服务器端请求地址 secureuri:false,//一般设置为false fileelementid:"upload_file",//文件上传空间的id属性 <input type="file" id="file" name="file" /> datatype: 'json',//返回值类型 一般设置为json success: function (data){ if(data.success){ url=data.message; }else{ alert("图片格式不正确"); } }, error: function (data)//服务器响应失败处理函数 { alert("服务器异常"); } }); };
以上是文件上传的功能,下面是下载!
下载其实超级简单,但是在网上找的信息很多都是不对的 只言片语不知道从哪粘过来的 我也是弄了好长时间才搞定,其实就几行代码
jsp 就是一个a标签
<a href='#' id="lj" ></a> 如果确定路径,及文件名可以这样写 举个栗子 <a href=https://www.2cto.com/uploadfile/2018/0324/20180324104139440.com/&' download="161616116518181.jpg" id="lj" ></a> 这样浏览器就知道是要下载操作了 href 是地址 download 是文件名 ,但是不是所有浏览器都支持 谷歌支持 火狐会打开文件
js文件
//$("#lj").attr("href",zc+upload);//$("#lj").attr("download",file);