我正在使用精细上传器版本4.0.3,我尝试使用方法setName和getName在提交文件后编辑原始filname。
.on('submit', function (event, id, name) {
$("#fine-uploader").fineUploader({setName: {id: "test"}})
})
但这不起作用!
你能给我一个代码示例,我怎样才能通过api使用setName方法?
谢谢!
迈克尔
答案 0 :(得分:1)
如果您通过setName
API method更改文件名称,则不会在Fine Uploader UI中自动更新UI。目前唯一的方法是使用Fine Uploader UI's edit filename feature直接通过UI编辑文件名。
在涉及此工作流程之前,解决方法是自行更新UI。最简单的方法是在提交的事件处理程序中选择文件列表中的元素,并相应地更改文件名元素的文本。所以,如果你正在使用jQuery(你是),你的解决方法看起来像这样:
$("#fineUploader").fineUploader().on("submitted", function(event, id, name) {
var $fileItem = $(this).fineUploader("getItemByFileId", id),
newName = $(this).fineUploader("getName", id);
$fileItem.find(".qq-upload-file-selector").text(newName);
});
请注意,这必须在您提交的回调(或更高版本)中发生,因为在调用提交的回调之前,文件项未添加到UI。您会注意到传递给提交的回调的name参数也是陈旧的。这是另一个在完成支持此工作流程的工作时应该修复的问题。