您好我使用Krajee Bootstrap fileinput,我需要在提交表单时动态更改uploadExtraData
。所以我把它作为回叫功能。但它对我不起作用。我认为uploadExtraData
回调函数仅适用于初始化。
这是我的代码
$(".file-loading").fileinput({
uploadUrl: document.location.origin + "/discussions/add",
uploadAsync: false,
uploadExtraData:getFormData(),
});
function getFormData(){
var project_id = $("#DiscussionProjectId").val();
var discussion_title = $("#DiscussionDiscussionTitle").val();
var comment = $('#discussionComment').attr('value');
var data = {
project_id:project_id,
discussion_title:discussion_title,
comment:comment
};
return data;
}
我只是在表单提交时保存输入文件和数据。
答案 0 :(得分:3)
我遇到了同样的问题,你可以试试这个:
$(".file-loading").fileinput({
uploadUrl: document.location.origin + "/discussions/add",
uploadAsync: false,
uploadExtraData:function(previewId, index) {
var data = {
project_id : $("#DiscussionProjectId").val(),
discussion_title:$("#DiscussionDiscussionTitle").val(),
comment:$('#discussionComment').attr('value')
};
return data;
},
});
答案 1 :(得分:0)
它也可能破坏控件并再次重新创建
self.jqueryObjects.fileInput.fileinput('destroy');
self.jqueryObjects.fileInput.fileinput({
showCaption: false,
uploadUrl: self.urls.uploadDocument.replace(/<patient_id>/g, self.selectedPatient.id),
allowedFileExtensions: ["txt"]
});