FormData中delete方法在ios不兼容
1.移动端直接用的input的file上传图片(name=“file”必填)
<input type="file" id="exampleInputFile1" accept="image/*" class="col-xs-3" name="file" >
<label for="exampleInputFile1" class="col-xs-3 InputFile">
<img src="img/signup/add.png" alt="" class=" add1"/>
</label>
<div class="box1">
<label for="exampleInputFile1" class="col-xs-3">封面美照*</label>
<span class="help-block col-xs-9">(仅可以上传1张png/jpg格式的图片)</span>
<div class="col-xs-12">
<input type="file" id="exampleInputFile1" accept="image/*" class="col-xs-3" name="file" >
<div class="action1 col-xs-9"><!--展示图片页面-->
<label for="exampleInputFile1" class="col-xs-3 InputFile">
<img src="img/signup/add.png" alt="" class=" add1"/>
</label>
</div>
</div> </div>

2.js部分。因为input中的file值需要清空,FormData的值也需要清空。但是ios不支持清空,所以重置下FormData,每次成功之后新建这个对象,这样ios和android都支持了~
$('#exampleInputFile1').on("change",function() {
var index;
index=layer.open({
type: 2
,content: '上传中'
});
// 创建
var form_data = new FormData();
// 获取文件
var file_data = $("#exampleInputFile1").prop("files")[0];//封面
form_data.append("file", file_data );
console.log(file_data );
if( file_data!=""){
$.ajax({
type: "POST",
url:config.api+"/public/upload",
enctype : "multipart/form-data",
dataType : "json",
processData: false, // 注意:让jQuery不要处理数据
contentType: false, // 注意:让jQuery不要设置contentType
data: form_data,
}).success(function(msg) {
form_data=new FormData ();//新建formdata!!!
/*form_data.delete("file");*/
$("#exampleInputFile1").val('');//清空input中的file值
layer.close(index);
$('.InputFile img').show();
if($('.img1').attr('src')==""){
} else{
$('.action1').append('<div class="cropped">' +
'<div class="image1 col-xs-3">'+
'<img src="'+msg.data+'" class="img1" id="show"/>'+
'<div class="delete1">'+"X"+'</div>'+
'</div>'+
'</div>');
$('.add1').remove();
$('.InputFile img').hide();
$('.InputFile').remove();
/* $('#exampleInputFile1').setAttribute('type','text');*/
/* $('.action1').append( '<div class="delete1">'+"X"+'</div>');*/
}
/*图片删除*/
$('.delete1').click(function () {
$("#exampleInputFile1").val('');
/*$(this).siblings().find('.cropped').remove();*/
$(this).parent().remove();
$(this).parent().parent().remove();
$(this).siblings().find('.delete1').remove();
$(this).remove();
$('.action1').append('<label for="exampleInputFile1" class="col-xs-3 InputFile">' +
'<img src="img/signup/add.png" alt="" class=" add1"/>' +
'</label>');
/*$('#exampleInputFile1').setAttribute('type','file');*/
});
console.log(msg);
}).fail(function(msg) {
console.log(msg);
});
}
});
使用的layer移动版,引入layer.js和layer.css即可~
FormData中delete方法在ios不兼容的更多相关文章
- Hibernate Session的delete()方法
本文介绍Hibernate Session的delete()方法.delete()方法用于从数据库中删除与Java对象对应的记录.对应游离对象和持久化对象,delete语句会做出不同的反应. AD: ...
- ASP.NET Core 中文文档 第二章 指南(4.10)检查自动生成的Detail方法和Delete方法
原文 Examining the Details and Delete methods 作者 Rick Anderson 翻译 谢炀(Kiler) 校对 许登洋(Seay).姚阿勇(Mr.Yao) 打 ...
- ASP.NET MVC 学习8、Controller中的Detail和Delete方法
参考:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/examining-the-details-and ...
- 【mybatis】service层中一个方法中使用mybatis进行数据库的 多个修改操作,可能是update也可能是delete操作,但是sql语句命名执行并且在控制台打印出来了,但是数据库中未更新到数据【事务的问题】
问题描述: service层中一个方法中使用mybatis进行数据库的 多个修改操作,可能是update也可能是delete操作,但是sql语句命名执行并且在控制台打印出来了,但是数据库中未更新到数据 ...
- java中File的delete()方法删除文件失败的原因
java中File的delete()方法删除文件失败的原因 学习了:http://hujinfan.iteye.com/blog/1266387 的确是忘记关闭了: 引用原文膜拜一下: 一般来说 ja ...
- 【Airtest】Airtest中swipe方法兼容不同分辨率的解决方法
使用Airtest中swipe方法由于不同分辨率的手机上滑动的坐标位置不同,所以想要兼容所有的手机,仅仅靠固定坐标就会出现问题 想要兼容所有的手机,可以按照如下思路进行 1.首先获取手机的分辨率,可以 ...
- laravel中delete()方法和destroy()方法的区别
delete()方法是实例方法,需要查询到相应的数据并通过模型实例调用 destroy()方法可以直接调用,通过索引删除记录 举个栗子: /*delete()方法删除*/ //先查找记录 $blog ...
- ASP.NET MVC 5 - 查询Details和Delete方法
在这部分教程中,接下来我们将讨论自动生成的Details和Delete方法. 查询Details和Delete方法 打开Movie控制器并查看Details方法. public ActionResul ...
- iOS开发 - 兼容iOS 10
1.Notification(通知) 自从Notification被引入之后,苹果就不断的更新优化,但这些更新优化只是小打小闹,直至现在iOS 10开始真正的进行大改重构,这让开发者也体会到UserN ...
随机推荐
- 【bzoj 2002】弹飞绵羊
Description 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏.游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置 ...
- springboot08-jpa-mysql
1.主要pom依赖: <!--jpa--> <dependency> <groupId>org.springframework.boot</groupId&g ...
- volatile的使用场景
单词解释: 乱序执行:指CPU对代码的执行顺序进行乱序优化,但保证各执行代码单元的顺序按指令顺序排列.以达到充分利用处理器的各处理单元的目的.(可以理解成:一个任务有不同的执行单元,这些单元之间有一定 ...
- python中#!/usr/bin/env python与#!/usr/bin/python
通常在脚本语言的第一行会看到#!/usr/bin/env python 与 #!/usr/bin/python其中之一,这两句话的目的都是指出你的python文件用什么可执行程序去运行它. #!/us ...
- JavaScript面试技巧(三):开发环境、运行环境
一.开发环境 1 介绍 2.IDE 3 .git - 4.模块化 - AMD CommonJS 5.构建工具 安装nodejs 安装webpack 配置webpack 使用jquery 压缩JS 6. ...
- 数据库并发控制及SQL Server的并发控制机制
在多用户和网络环境下,数据库是一个共享资源,多个用户或应用程序同时对数据库的同一数据对象进行读写操作,这种现象称为对数据库的并发操作.显然并发操作可以充分利用系统资源,提高系统效率.虽然如此,但是如果 ...
- 【tmos】spring boot项目中处理Schedule定时任务
我的代码 /** * Author:Mr.X * Date:2017/10/30 14:54 * Description: */ @Component @Configurable @EnableSch ...
- 微信支付-H5网页支付开通流程
简介 H5 支付是指商户在微信客户端外的移动端网页展示商品或服务,用户在前述页面确认使用微信支付时,商户发起本服务呼起微信客户端进行支付.主要用于触屏版的手机浏览器请求微信支付的场景.可以方便的从外 ...
- python答题辅助
最近直播答题app很热门,由于之前看过跳一跳的python脚本(非常棒),于是也想写一个答题的脚本. https://github.com/huanmsf/cai 思路: 1.截图 2.文字识别,提取 ...
- 使用Office Online Server在线预览Office
微软官方文档介绍 ⒈介绍 Office Online Server是 Office Web Apps Server 的升级版本,安装环境必须为两台Windows Server 2012 R2 或 Wi ...