Je n'ai vu aucune information sur ce sujet, sauf pour savoir comment filtrer les fichiers lors de l'utilisation de la dernière librairie Kendo. Donc, je poste comment je l'ai fait pour que les autres puissent l'utiliser s'ils en ont besoin.Impossible de filtrer les fichiers en utilisant Kendo Upload avec rRazor
0
A
Répondre
0
C'est Kendo utilisé dans la syntaxe Razor:
@(Html.Kendo().Upload()
.Name("procfiles")
.Async(a => a
.Save("SavePF", "AccountEvent", new { id = Model.SeqNum })
.Remove("RemovePF", "AccountEvent", new { id = Model.SeqNum })
.AutoUpload(true)
).Files(f =>
{
if (Model != null && !string.IsNullOrEmpty(Model.ProcedureFile))
{
f.Add().Name(Path.GetFileName(Model.ProcedureFile));
}
})
.Multiple(false)
.ShowFileList(true)
.Events(e =>
{
e.Error("accountEventEditController.uploadProcFileError");
e.Select("accountEventEditController.onProcFileUploadSelect");
e.Upload("accountEventEditController.onProcFileUpload");
e.Success("accountEventEditController.onProcFileSuccess");
e.Remove("accountEventEditController.onProcFileRemove");
e.Complete("accountEventEditController.onProcFileComplete");
})
)
Comme vous pouvez le voir, vous pouvez brancher dans l'événement "Select". Ensuite, j'ai un fichier .js gestionnaire de contrôleur, qui exécute le code suivant pour filtrer les types de fichiers.
var onChkFileUploadSelect = function (e, type) {
var files = e.files;
var acceptedFiles = [".pdf", ".xlsx"];
var isAcceptedImageFormat = ($.inArray(files[0].extension, acceptedFiles)) != -1;
console.log(files[0].extension);
if (!isAcceptedImageFormat) {
e.preventDefault();
$(targetErrorControl).fadeIn('slow').delay(3000).fadeOut('slow');
}
}
Espérons que cela aide certains.