6

Webアプリにファイル入力タグがあります。サーバーに送信する前に、ファイルが大きすぎないことを確認したいと思います。もちろん、私はまだ検証サーバー側を持っています。JavaScriptでこれを行う方法はありますか?IE7+およびFF3+で動作する必要があります。ありがとうございました。

編集:somefileinputobject.files [0] .filesizeはFFで機能しますが、IEでは機能しません。

4

5 に答える 5

2

それは難しい問題です。これはAJAXで行う必要があり、POSTリクエストでブラウザからサーバーに送信されるファイルサイズヘッダーを使用する必要があります。

YahooのUIライブラリには、これを支援するツールがあります。 YUIアップローダー

于 2009-02-13T19:22:51.560 に答える
0

Javascriptはこれを行うことができません。深刻なセキュリティ問題が発生します。おそらくフラッシュはできます。

于 2009-02-13T19:19:49.620 に答える
0

簡単な答え:いいえ、これはサーバーで処理する必要があります。

長い答え:信頼できない。IEを使用すると、次のようなことができます。

function checkSize(filespec) {
var fso, f, s;
fso = new ActiveXObject("Scripting.FileSystemObject");
f = fso.GetFile(filespec);
s = f.size;
// Do something with var s
}

ただし、これは、ブラウザのセキュリティ設定または別のブラウザやプラットフォームの使用によって簡単に損なわれる可能性があります。

于 2009-02-13T19:21:04.483 に答える
0

すべてのブラウザでJavascriptを使用して確実に実行できるわけではありませんが、投稿されたデータの合計サイズをweb.config

于 2009-02-13T19:21:31.143 に答える
0

従来のファイル入力コントロールを使用している場合、実際には多くのオプションはありません。クライアント側でチェックすることはできず、サーバー側でチェックする機会を得る前に、構成されたmaxRequestLengthに到達します。ただし、maxRequestLengthを超えたときに発生する例外をキャッチできます。

于 2009-02-13T19:23:15.087 に答える