当我的用户尝试上传多个文件时,我会触发一个bootbox模式,让他决定2个可能的选项。在bootbox回调中,我想迭代从文件输入中获取的文件列表。问题是我的文件列表变量在回调中是空的。
看看代码:
this.loadFiles = function(files){
if (files.length>1){ //here, 'files' is populated
bootbox.dialog({
message: APi18n.__("media_warning_multiple_file_input_modal_message"),
title: TAPi18n.__("media_warning_multiple_file_input_modal_header"),
animate: true,
buttons: {
danger: {
label: TAPi18n.__('cancel'),
className: "btn-default",
},
success: {
label: TAPi18n.__('media_warning_multiple_file_input_modal_ok_button'),
className: "btn-info",
callback: function() {
console.log(files); //here, 'files' is empty
_.each(files, function(file){
//etc.
如何在我的bootbox回调中访问我的files
列表?
答案 0 :(得分:1)
可以更改files
变量"稍后"在loadFiles
函数的范围内?如果是这样,您应该在之后移动更改部分用于对话:
this.loadFiles = function(files){
if (files.length>1){ //here, 'files' is populated
bootbox.dialog({
message: APi18n.__("media_warning_multiple_file_input_modal_message"),
title: TAPi18n.__("media_warning_multiple_file_input_modal_header"),
animate: true,
buttons: {
danger: {
label: TAPi18n.__('cancel'),
className: "btn-default",
},
success: {
label: TAPi18n.__('media_warning_multiple_file_input_modal_ok_button'),
className: "btn-info",
callback: function() {
_.each(currFiles, function(file){
//etc.
});
// <--- HERE
}