jQuery文件上传出错时的原始文件名
使用,当上载失败时,如何在jQuery文件上传出错时的原始文件名,jquery,jquery-file-upload,blueimp,Jquery,Jquery File Upload,Blueimp,使用,当上载失败时,如何在fileuploadfail事件处理程序中检索原始文件名 $('#fileupload').fileupload({ ... }) .on('fileuploadfail', function (evt, data) { // retrieve original filename }); 我在文档中没有找到答案,在事件对象或数据参数中也找不到任何内容。我检查了源代码,发现函数参数没有传递文件名,因此可以将文件名存储在变量中(例如)添加文件并在出现错误时使用
fileuploadfail
事件处理程序中检索原始文件名
$('#fileupload').fileupload({
...
})
.on('fileuploadfail', function (evt, data) {
// retrieve original filename
});
我在文档中没有找到答案,在事件对象或
数据参数中也找不到任何内容。我检查了源代码,发现函数参数没有传递文件名,因此可以将文件名存储在变量中(例如)添加文件并在出现错误时使用时:
var fileName;
$('#fileupload').fileupload({
....
}).on('fileuploadadd', function (e, data) {
fileName = data.files[0].name;
}).on('fileuploadfail', function (evt, data) {
alert(fileName);
});
编辑:
如评论中所述,显然有一个选项可以通过引用数据.files[0].name来获取失败
函数中的文件名
-谢谢@FlorentGeorges我检查了源代码,发现函数参数没有传递文件名,因此可以将文件名存储在变量中(例如)添加文件并在出现错误时使用时:
var fileName;
$('#fileupload').fileupload({
....
}).on('fileuploadadd', function (e, data) {
fileName = data.files[0].name;
}).on('fileuploadfail', function (evt, data) {
alert(fileName);
});
编辑:
如注释中所述,显然有一个选项可以通过引用data.files[0].name
在fail
函数中获取文件名,谢谢@FlorentGeorges在函数中使用console.log(data)
,您将能够知道哪个参数保存文件名谢谢。不幸的是,我这样做了,却找不到它。我为两个不同的文件记录了数据
,无法发现任何(相关)差异。在函数中使用console.log(data)
,您将能够知道哪个参数包含文件名谢谢。不幸的是,我这样做了,却找不到它。我记录了两个不同文件的数据
,无法发现任何(相关)差异。谢谢。不幸的是,当您选择2个文件时,在第一个*fail
事件发生之前,会为这两个文件触发*add
事件。因此,它最终给出了两个相同的文件名。但实际上,这给了我答案,我可以直接在*fail
事件处理程序中访问data.files[0].name
。奇怪的是,当将数据
记录到控制台中时,或者使用JSON.stringify()
,属性文件
显示为[{}]
,所以我认为它是一个空对象(在两个处理程序中的行为相同)。谢谢如果您直接在*fail
中更新您的答案以使用数据文件[0].name
,我将接受:-)@FlorentGeorges-您太好了:)我已经更新了我的答案,但这应该归功于您,因为我不知道该选项。再次感谢,谢谢。不幸的是,当您选择2个文件时,在第一个*fail
事件发生之前,会为这两个文件触发*add
事件。因此,它最终给出了两个相同的文件名。但实际上,这给了我答案,我可以直接在*fail
事件处理程序中访问data.files[0].name
。奇怪的是,当将数据
记录到控制台中时,或者使用JSON.stringify()
,属性文件
显示为[{}]
,所以我认为它是一个空对象(在两个处理程序中的行为相同)。谢谢如果您直接在*fail
中更新您的答案以使用数据文件[0].name
,我将接受:-)@FlorentGeorges-您太好了:)我已经更新了我的答案,但这应该归功于您,因为我不知道该选项。再次感谢