自己写代码修复 ace_file_input 叉删除按钮不起作用的情况

当开发需要本地上传图片,并且展示的时候,不自然的就会去用jquery插件,但是,有的时候不知是自己环境的原因还是其他的,明明示例里的 删除按钮起作用,但是,弄到自己的环境里,弄死不起作用。怎么办??没办法,只有自己想办法来处理咯。

					<div class="col-xs-12" id='<portlet:namespace/>inputid'>
						<input multiple="" type="file" id="id-input-file-3"  name='<portlet:namespace/>epic' />
					</div>
很简单,只需要在前面放入一个input file标签即可,

然后初始化

$('#eqpic input[type=file]').ace_file_input({
	style:'well',
	btn_choose:'点击或者拖曳仪器图片',
	btn_change:null,
	no_icon:'ace-icon fa fa-cloud-upload',
	droppable:true,
	thumbnail:'large'
})
这样,当我们点击后即可上传图片和本地预览,但是删除按钮不起作用。

开发者模式可以发现页面是这样的。

<div class="col-xs-12" id="_ImproveEPInfo_WAR_ImproveEPInfoportlet_INSTANCE_201707131445_inputid">
	<div class="ace-file-input ace-file-multiple" style="border: 1px solid rgb(246, 250, 253);">
	<input multiple="" type="file" id="id-input-file-3" name="_ImproveEPInfo_WAR_ImproveEPInfoportlet_INSTANCE_201707131445_epic">
		<label class="file-label" data-title="点击或者拖曳仪器图片">
			<span class="file-name" data-title="No File ...">
				<i class="ace-icon fa fa-cloud-upload">
				</i>
			</span>
		</label>
		<a class="remove" href="#">
			<i class="icon-remove">
			</i>
		</a>
	</div>
</div>


现在,我们要做的就是给class 为remove的a 标签绑定一个点击事件。

由于安全因素的原因,不允许直接向input  type=file里面读写,所以换一个思路。

我们所有的上传图片jsp代码都是在id 为inputid的div中,那我们可以直接删除里面的元素,然后重新初始化不就可以了

好了。下面就是js代码了。

/* 自己绑定删除按钮 */
$(".remove").bind("click",function(){
	$("#<portlet:namespace/>inputid").empty();//第一步,删除div下的所有元素
 	
	$('<input>',{
		type:'file',
		id:'id-input-file-3',
		name:'<portlet:namespace/>epic',
		multiple:''
	}).appendTo($('#<portlet:namespace/>inputid')); 
 	//第二步,由于删除了div下所有的元素,所以需要新建一个input file标签来初始化
	$('#eqpic input[type=file]').ace_file_input({
		style:'well',
		btn_choose:'点击或者拖曳仪器图片',
		btn_change:null,
		no_icon:'ace-icon fa fa-cloud-upload',
		droppable:true,
		thumbnail:'large'
	});
	//第三步,初始化 input file 标签
});


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值