5

基本的に、これよりも優れたもの:

<input type="file" name="myfile" size="50">

まず第一に、browseボタンはブラウザごとに異なって見えます。フォームのボタンとは異なり、スタイルを設定するにはハック的submitな方法を考え出す必要があります。

次に、アップロードされたファイルの量を示す進行状況インジケーターがありません。通常、複数の送信を無効にする何らかのクライアント側の方法を実装する必要があります (たとえば、送信ボタンを「フォーム送信中... お待ちください」を示す無効なボタンに変更する) か、巨大な警告を点滅させます。

Flash や Java を使用しない、これに対する適切な解決策はありますか?

Yaakov : その製品はまさに私が探していたものに見えますが、価格は 1000 ドルで、特にASP.NET. 同じまたは類似の機能をカバーするオープン ソース プロジェクトはありますか?

4

4 に答える 4

9

Flash、Java、ActiveXなどの他のテクノロジーを使用したくない場合は、ファイルアップロードボックスを使用してください。

プレーンHTMLを使用すると、説明したエクスペリエンスにかなり制限されます(プログレスバーなし、二重送信など)。JavaScriptを使用する場合は、アップロードが進行中であることをフィードバックし、アップロードの進行状況を表示することで、問題のいくつかを解決できます(完全なラウンドトリップを行う必要がないため、ハックです。サーバーとその逆ですが、少なくともそれは機能します)。

Flash(ほとんどどこでも多くのプラットフォームで利用可能)を使用する場合は、これらの問題のほとんどすべてを克服できます。すばやくグーグルすると、そのような2つ のコンポーネントが見つかりました。どちらも、フリーオープンソースです。私はそれらのどれも使用したことがありませんが、それらはよく見えます。ところで、Flashにも問題がないわけではありません。たとえば、スライド共有にマルチファイルアップローダーを使用している場合、ブラウザーが常にクラッシュし続けました:-(

おそらく現在の最善の解決策は、ユーザーがFlashを使用しているかどうかを動的に検出することです。その場合は、基本的なHTMLを選択できるようにしながら、Flashバージョンのアップローダーをユーザーに提供します。

HTH

于 2008-08-15T07:54:33.063 に答える
1

ファンシーアップロードスクリプトをご覧ください。フラッシュを使用していますが、それでも見栄えがします。

于 2008-08-15T07:58:28.830 に答える
1

ここでの問題は、ブラウザが基本的なファイルアップロード入力コントロールを変更するものをすべてブロックするように特に機能することです。たとえば、javascriptで変更することはできません。

その理由はセキュリティです。スクリプトを作成できれば、ページにアクセスしたときにハードディスクからさまざまなファイルが送信されるページを作成できます。よくない。

現在、さまざまな回避策がありますが、IEとFXでは異なります(Safari、Operaなどについてはわかりません)。

電子メールに何かを添付するときに、IEとFXでhttp://www.gmail.comが何をするかを見てください。

そのゴミの「参照」ボタンを見たいのですが、予期しないことを何も入れていないことがわかります。

于 2008-08-15T08:52:06.397 に答える
0

確かに、ファイルのアップロード制御は確実に時代遅れです。うまくいけば、これは将来のasp.netバージョンで解決されるでしょう。

多少の費用はかかりますが、Telerik アップロード コントロールには、スタイリングや進行状況の更新など、探している機能がすべて備わっていることがわかりました (大規模なアップロードのメモリも最適化されます)。

于 2008-08-15T05:56:22.227 に答える