1

javascriptを使用して、クライアント側でユーザーが選択したファイルのファイルサイズを確認したいと思います。これに使用しているコードは次のとおりです。

<script type="text/javascript">
 var myFile = document.getElementById('myfile');

  //binds to onchange event of the input field
  myFile.addEventListener('change', function() {
  //this.files[0].size gets the size of your file.
   alert(this.files[0].size);

   });
 </script>

しかし、コードを実行するときは、ファイルを選択してください。何も起こりません。どんな体も私が間違っていることを教えてくれます

4

3 に答える 3

3

コードは正常 に動作します (File API を使用する HTML5 ブラウザーで)。<script>ブロックが要素のにあることを確認してください<input>。そのjsfiddleでは、「ロード」ハンドラーにあります。

于 2012-04-04T13:51:37.790 に答える
0

JavaScript を使用してファイル サイズを取得することはできません。ブラウザのセキュリティにより、Javascript によるファイル システムへのアクセスが防止されます。Flash、ActiveX、またはこれを行うためのアクセス許可を付与できるものを使用する必要があると思います。

編集: HTML5 ファイル API を使用している場合は、これを行うことができると思いますが、どこにもそのことを示していないため、これが事実であるとは想定していませんでした。あなたの投稿にタグとして HTML を付けます。

于 2012-04-04T13:46:32.723 に答える
0

jqueryを使用して動作します:

http://jsfiddle.net/UUdcy/

$('#myfile').change( function() {
    var fileInput = $("#myfile")[0];
    var imgbytes = fileInput.files[0].fileSize; // Size returned in bytes.
    $('body').append('<p>'+imgbytes+'</p>');
});​
于 2012-04-04T13:55:13.953 に答える