【前端学习简记】layui不同版本的upload组件传递参数方式

【概】有个layui  1.09版本的前端项目需要更改,使用upload组件POST传递验证参数到后台,layui不同版本之间使用方法不同,也不方便更新到最新版,故记录此方法

【不同版本的方法】

1.09 版核心方法,就是通过input赋值传递,写在upload:before里

var data={
			verify:verify
		}
setdata("#upload",data);
*******/
//传参
function setdata(input,data){
					    var item=[];
					    $.each(data,function(k,v){
					        item.push('<input type="hidden" name="'+k+'" value="'+v+'">');
					    })
					    $(input).after(item.join(''));
}				  
layui.upload({
					    url: '../upload/../excel/import.php?method=import_client&upload=true&token='+token//?upload=true&token='+token+"&firmid="+firmid
					    ,elem: '#upload' //指定原始元素,默认直接查找class="layui-upload-file"
					    ,method: 'post' //上传接口的http类型
					    ,before: function(e) {
					    	index = parent.layer.load(0,{shade: [0.7, '#393D49']}, {shadeClose: true});
					    	var data={
							    	verify:verify
					    	}
					    	setdata("#upload",data);
						}
					    ,success: function(res){
					    	parent.frames[lastIframe].refresh(res.status);
						    parent.layer.msg(res.msg);
						    parent.layer.close(index);
						    index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
						    parent.layer.close(index); //执行关闭
					    }
					  });

2.0 版本优化了以下,直接在before内赋值即可

before: function(obj){ 
layer.load(); //上传loading
this.data={'xxx':'xxx'};
}
发布了44 篇原创文章 · 获赞 21 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/gzyh_tech/article/details/89785850