如何通过jquery限制用户在telerik上传中上传零大小的文件?

时间:2013-10-10 07:06:09

标签: jquery asp.net-mvc telerik filesize

我使用telerik上传控件上传文件。

@(Html.Telerik().Upload()
      .Name("fileUpload")
      .Multiple(false)
      .Async(async => async
      .AutoUpload(false))
      .ClientEvents(events => events))

我尝试过OnSelect FUnction

function onSelect(e) {
    var files = e.files;
    if (files[0].rawFile.size <= 0) {
        alert("File Size Can't be zero.");
        e.preventDefault();
    }
}

它正在解雇,但在IE中在mozilla fir中出错,因为它工作正常

Microsoft JScript运行时错误:无法获取属性“size”的值:object为null或undefined

正在上传文件,但问题是,它也接受零大小的文件,我要验证它不应该接受零大小的文件。有人请帮助我如何通过jquery实现这一点,或者如果有其他选择,请告诉我?

1 个答案:

答案 0 :(得分:0)

您可以使用客户端事件来检查文件和文件大小。

@(Html.Telerik().Upload()
    .Name("attachments")
    .Async(async => async
        .Save("Save", "Upload")
        .Remove("Remove", "Upload")
    )
    .ClientEvents(events => events
        .OnUpload("onUpload")
        )
     )
     function onUpload(e) {
          $console.log("Upload :: " + getFileInfo(e));
     }
     function getFileInfo(e) {
       return $.map(e.files, function(file) {
          var info = file.name;

          // File size is not available in all browsers
          if (file.size > 0) {
              info  += " (" + Math.ceil(file.size / 1024) + " KB)";
          }
          return info;
      }).join(", ");
    }