fileinput.js在上传文件时提交表单数据

fileinput.js是bootstrap下面的一款样式简洁且功能强大的文件上传的插件.

问题描述:

fileinput.js需要再页面加载时完成初始化,虽然可以通过 uploadExtraData参数接收附件意外的参数,但是直接使用uploadExtraData:{'id':id}是不行的,这些参数也必须是页面加载时就已经可以去到值的,但是现在有个需求是需要上传附件前先填写表单,然后添加附件,当点击确定按钮时表单数据与附件一起提交后台.fileinput的特性导致其无法获得表单中的参数.

解决:

1.在js中初始化是定义一个全局参数,json格式:例如:

	var formdata = {};

2.再点击确定按钮时,将表单数据放到formdata中,如:

	formdata = {
                   "repay_amount":$("#repay_amount").val(),
                   "pay_date":$('#date_start1').datetimebox('getValue')
 
                 }

3.uploadExtraData使用函数的形式获取数据,将formdata作为uploadExtraData函数的返回值返回:

	uploadExtraDatafunction(previewId, index) {   //额外参数 返回json数组  
    		return formdata
	},
这样,在提交到后台时,表单数据会随fileinput的的请求一起提交.

个人猜测:uploadExtraData直接使用json格式参数时(例如uploadExtraData:{'id':id}),会在初始化是获取id的值,并且上传是不会检查id是否变化,但是uploadExtraData作为函数使用时,上传前会获取函数的返回值,然后一并带到后台(纯属猜测,有待验证).

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值