0

ファイルのアップロードにテレリック アップロード コントロールを使用しています。

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

OnSelect関数を試してみた

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

起動していますが、mozilla fir の IE でエラーが発生し、正常に動作しています

Microsoft JScript ランタイム エラー: プロパティ 'size' の値を取得できません: オブジェクトが null または未定義です

ファイルをアップロードしていますが、問題は、サイズがゼロのファイルも受け入れていることです。サイズがゼロのファイルを受け入れるべきではないことを検証したいと思います。jqueryでそれを達成する方法を教えてください。または、他のオプションがある場合は教えてください。

4

1 に答える 1

0

ClientSide イベントを使用して、ファイルとファイル サイズを確認できます。

@(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(", ");
    }
于 2013-10-10T07:19:47.180 に答える