2017-03-29 1 views

Antwort

0

Dies wird Kendo in Razor-Syntax verwendet:

@(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"); 
         }) 
        )  

Wie Sie sehen können, können Sie in die "Select" Ereignis verknüpfen. Dann habe ich eine .js Controller-Handler-Datei, die den folgenden Code zum Filtern von Dateitypen ausführt.

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'); 
    } 
} 

Hoffentlich hilft das einige da draußen.

Verwandte Themen