Krajee Bootstrap fileinput如何动态更改uploadExtraData

时间:2016-01-30 08:33:14

标签: javascript php jquery

您好我使用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;
}

我只是在表单提交时保存输入文件和数据。

2 个答案:

答案 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"]
    });
相关问题