layui 单图片上传 多图片批量上传
css样式
.defaultDots1{
display: inline-block;
min-width: 14px;
height: 16px;
padding: 0 5px;
line-height: 16px;
font-size: 12px;
background: #F5222D;
border-radius: 8px;
color: #FFFFFF;
text-align: center;
}
html 代码
<div class="row umar-t16 line-32">
<div class="col-md-1 col-sm-1 col-xs-1 tx-r vtc-c" style="line-height: 60px;height: 60px;">主图片:</div>
<div class="col-md-2 col-sm-2 col-xs-2 vtc-c" style="line-height: 60px;">
<div class="input-group input-group-sm ub-fh">
<input type="hidden" name="img" id="img" value="${map.img}">
<button type="button" id="headImg" class="btn btn-primary" >上传</button>
<span class="rela in-show umar-l uinn-b hide" style="width: 60px;height: 60px;" id="iconspan" >
<img class="ub-fv ub-fh" id="uploadHead" οnclick="previewImg(this)">
<i class="defaultDots1" οnclick="removeImage(this)" >x </i>
</span>
</div>
</div>
<div class="col-md-1 col-sm-1 col-xs-1 tx-r" style="line-height: 60px;height: 60px;">批量图片:</div>
<div class="col-md-7 col-sm-7 col-xs-7 vtc-c" style="line-height: 60px;">
<div class="input-group input-group-sm ub-fh imagesdiv">
<input type="hidden" name="maps[imgs]" id="imgs" value="${map.imgs}"/>
<button type="button" id="headImgs" class="btn btn-primary" >上传</button>
</div>
</div>
</div>
js 代码
var imgs = "";
var type = "${param.type==null?map.type:param.type}";
$(function(){
var img="${map.img}"; //修改 查询出来的 主图片
imgs="${map.imgs}"; 修改 查询出来的 批量图片
//$("#uploadHead").attr("src","<%=basePath%>"+icons);
if($.funcUtils.isNotEmpty(img))
showImgs(img,"main");
if($.funcUtils.isNotEmpty(imgs))
$.each(imgs.split(","),function(i,src){
if(i<imgs.split(",").length-1)
showImgs(src,"other");
})
})
//上传一张主图片
layui.use(['upload', 'element'], function() {
var upload = layui.upload,
element = layui.element; //上传
upload.render({
elem: '#headImg',
url: '<%=basePath%>/uploadingFile/uploadFile.html?folderName=UserPicture', //UserPicture上传到本地磁盘resin4.0文件夹
field:'Filedata',
xhr: xhrOnProgress,
accept: "images", //普通文件
exts: 'jpg|png|jpeg|gif',//设置可上传文件
multiple: false, //多文件上传
done: function(res, index, upload) { //每个文件提交一次触发一次。详见“请求成功的回调”
showImgs(res.fileInfo,"main");
},Choose:function(obj){
Obj.preview(function(index, file, result){
Console.log(index);//得到文件索引
Console.log(file);//得到文件对象
Console.log(file.name)//得到上传文件名称
Console.log(file.size)//得到上传文件大小size
})
}
});
});
function previewImg(_this) { //预览主图片
var src = $(_this).attr("src");// style='max-height:600px;max-width:100%;'
var imgHtml = "<div class='tx-c'><img src='" + src + "' /></div>";
//弹出层
windowTop.$sys.layer.open({
maxmin: true,
type: 1,
shade: 0.8,
offset: 'auto',
area: ['500px','400px'],
closeBtn:1,
skin:'layui-layer-nobg',
shadeClose:true,//点击外围关闭弹窗
scrollbar: false,//不现实滚动条
title: "图片预览", //不显示标题
content: imgHtml //捕获的元素,注意:最好该指定的元素要存放在body最外层,否则可能被其它的相对元素所影响
});
}
//批量多张图片上传
layui.use(['upload', 'element'], function() {
var upload = layui.upload,
element = layui.element; //上传
upload.render({
elem: '#headImgs',
url: '<%=basePath%>/uploadingFile/uploadFile.html?folderName=UserPicture',
field:'Filedata',
xhr: xhrOnProgress,
accept: "images", //普通文件
exts: 'jpg|png|jpeg|gif',//设置可上传文件
multiple: true, //多文件上传
size:10240,//图片大小
number:30,//上传的数量
bindAction: '#test9',
before: function(obj) {
/* //预读本地文件示例,不支持ie8
obj.preview(function(index, file, result) {
$('#demo').append('<img src="' + result
+ '" alt="' + file.name
+'"height="92px" width="92px" class="layui-upload-img uploadImgPreView">');
}); */
},
done: function(res, index, upload) { //每个文件提交一次触发一次。详见“请求成功的回调”
//每个图片上传结束的回调,成功的话,就把新图片的名字保存起来,作为数据提交
if(res.code!="1"){
imgs=imgs+res.fileInfo+",";
showImgs(res.fileInfo,"other");
}
}
});
});
//显示图片
function showImgs(src,type){
if(type=="main"){
$("#img").val(src);
$("#iconspan").removeClass("hide");
$("#iconspan img").attr("src",src);
}else{
var $icons = $("#iconspan").clone();
$icons.removeClass("hide");
$icons.attr("id","");
$icons.find("img").attr("src",src);
$(".imagesdiv").append($icons);
}
}
//点击X删除图片
function removeImage(_this){
var pid = $(_this).parent().attr("id");
if(pid=="iconspan"){
$(_this).parent().addClass("hide");
$("#img").val("");
$("#iconspan img").attr("src","");
}
else{
var src = $(_this).prev().attr("src")+",";
imgs = imgs.replace(src, "");
$(_this).parent().remove();
}
}
java 图片上传到本地磁盘 resin4.0文件里面 返回图片路径到 input框img 在通过添加方法到数据库就可以了
java后台
/***
* 个人文件上传
*
* @param Filedata
* @param request
*/
@RequestMapping("uploadFile")
@ResponseBody
public synchronized Object uploadFile(@RequestParam("Filedata") MultipartFile Filedata, HttpServletRequest request,HttpServletResponse response) {
response.addHeader("Content-Type", "text/html;charset=UTF-8");
String folderName=request.getParameter("folderName");//文件夹名字
String compress=request.getParameter("compress");//是否压缩图片
// 上传图片信息
Map<String, Object> uploadInfo = new HashMap<String, Object>();
// 菜单栏目图标保存路径
String path="";
String iconPath =request.getSession().getServletContext().getRealPath("/Attachment");
// 判断文件是否为空
if (!Filedata.isEmpty()) {
try {
FileUploadUtil.uploadFileRandomFileName(Filedata, iconPath,folderName);
// 返回保存文件信息
path=FileUploadUtil.fileName;
uploadInfo.put("fileInfo", File.separator+"Attachment"+File.separator+folderName+File.separator+path);
if(compress!=null&&"true".equals(compress)){
//压缩图片
String filepath = iconPath+File.separator+folderName+File.separator+path;
FileUploadUtil.zipWidthHeightImageFile(filepath,filepath,30,40,10f);
}
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
return uploadInfo;
}
layui 单图片上传 多图片批量上传相关推荐
- ajax 批量上传图片插件,TinyMCE多图片批量上传(Ajax)教程
需要用上插件:axupimgs 插件作者:莫若卿 支持版本:5.0.4+ 支持语言:仅中文 插件版本:1.6 一.axupimgs 插件作用: 这是一个tinymce多图片批量上传插件,支持拖拽文件添 ...
- Android 图片 批量上传,移动端图片批量上传问题
一.操作系统 1.ios ios的操作系统: 实现图片批量上传,可以直接使用input type=file 加上multiple 就可以实现,至于有些图片显示有问题可以通过 new FileRead ...
- 分享一个图片管理程序,图片批量上传,图片管理(有图片)
呵呵,好久没写博客了.今天在此奉上一篇! 关于图片管理,其实做项目很多地方都用到图片管理. 比如:产品图片,新闻图片,作品图片. 现分享一篇关于图片管理的文章,希望大家能用得上. 先来看效果图吧: 上 ...
- php图片批量上传插件下载,jQuery的多图片批量上传插件
jQuery的多图片批量上传插件 js代码 $(function(){ //上传图片 var $tgaUpload = $('#goodsUpload').diyUpload({ url:'uploa ...
- jQuery图片批量上传插件源码,支持批量上传、预览、删除、放大,可配置上传数量、上传大小、追加方式,含详细使用文档
jQuery图片批量上传插件源码,支持批量上传.预览.删除.放大,可配置上传数量.上传大小.追加方式,含详细使用文档 程序包内含使用Demo 完整程序源代码:jQuery图片批量上传插件源码 上传前 ...
- webuploader多图片 php,php+WebUploader图片批量上传
一.webuploader webuploader主要用来做文件的上传,支持批量上传和图片预览,图片预览是将图片生成base64数据直接在 标签中使用,所以能够达到的效果是未真正上传图片可以先看到上传 ...
- 车型库项目图片批量上传功能
自09年5月份进入公司,已近两年.之前一直在忙于项目上的开发,没时间整理.从今日起,把做过的项目整理一遍,归纳成档,以便查阅. 公司技术部差不多十来个人,但分工明确.技术部别分为了两个开发小组.我主要 ...
- JCK Editor 结合jQuery Upload File 增加图片批量上传功能
项目需准备文件: jQuery File Upload 上传插件,下载地址:https://github.com/JennerZhang/jQuery-File-Upload Joomla JFUpl ...
- php图片批量上传插件下载,vue.js图片批量上传插件
vue.js图片批量上传插件是一款基于vue.js框架的图片上传控件,适用于手机端的图片上传代码,支持批量上传,拖到图片上传,显示文件数量和大小等功能 js代码 // import up from ' ...
最新文章
- HTML+CSS布局技巧及兼容问题【阅读季】
- ipython --pandas
- FCKeditor的使用说明
- 蓝桥杯比赛常考算法_蓝桥杯总结-常用函数及算法
- H5移动端开发学习总结
- 从零开始nodejs系列文章
- 在深圳待不下去了,换个大城市就好了嘛
- linux终端 打开光驱,ubuntu如何挂载光盘? Ubuntu下中手动挂载光盘的教程
- Atlas指南: 建立一个AJAX 涂鸦程序(三)
- OpenGL ES 3.0学习实践
- 概率论与数理统计 第四版 课后习题解析
- 打砖块游戏源文件_2020年10月手游海外买量分析: 多款RPG游戏上新,休闲厂商霸占Top 推广榜...
- SpatialDropout
- android ip v6 teredo,win7系统通过teredo连接IPv6的操作方法
- php采集今日头条出现问题,使用php蓝天采集抓取今日头条ajax的文章内容
- Multiple View Geometry(多视图几何)学习笔记(23)—射影摄像机对二次曲面的作用摄像机中心的重要性
- 国外免费电子书资源下载
- Visitor模式实践
- ADAS需要用到的技术
- 触发器flip-flop
热门文章
- 银河系的神秘信号:也许我们正见证真实的科幻故事
- 全网最详细最基础的网络安全入门教程
- 高级转录组调控分析和R语言数据可视化第十三期 (线上线下开课)
- 震惊!用盗版CorelDRAW竟然会这样!
- 怎么彻底清除计算机病毒,Win7旗舰版系统如何才能彻底删除电脑病毒
- Android 模块 -- 基于XMPP协议的手机多方多端即时通讯方案
- 汇率兑换程序python按温度转换_python复习+实例编写(1)——温度转换、汇率转换...
- 创建反向词典,为你打开神经网络的大门
- 前端 学完HTML+CSS 自己动手写出QQ官网导航栏
- python你好怎么写_Python基础01之“你好世界”