Pada dasarnya, sesuatu yang lebih baik dari ini:
<input type="file" name="myfile" size="50">
Pertama-tama, browse
tombol terlihat berbeda pada setiap browser. Tidak seperti tombol kirim
pada formulir, anda harus datang dengan beberapa hack-y cara untuk gaya itu.
Kedua, ada's tidak ada kemajuan indikator yang menunjukkan anda berapa banyak file yang telah di-upload. Biasanya anda harus menerapkan beberapa jenis klien-sisi cara untuk menonaktifkan beberapa mengajukan (misalnya mengubah tombol submit ke tombol dinonaktifkan menunjukkan "Bentuk mengirimkan... mohon menunggu.") atau flash raksasa peringatan.
Apakah ada solusi yang baik untuk ini bahwa don't menggunakan Flash atau Java?
Yaakov: produk ini bagus untuk menjadi persis apa yang saya'm mencari, tetapi biaya $1000 dan khusus untuk ASP.NET.
Apakah ada proyek open source yang menutupi sama atau fungsi yang sama?
Upload File kotak adalah di mana kita're saat ini jika anda don't ingin melibatkan teknologi lainnya seperti Flash, Java atau ActiveX.
Dengan HTML anda cukup banyak terbatas pada pengalaman anda've dijelaskan (tidak ada progress bar, double menyampaikan, dll). Jika anda bersedia untuk menggunakan beberapa javascript, anda dapat memecahkan beberapa masalah dengan memberikan umpan balik yang upload sedang berlangsung dan bahkan menunjukkan kemajuan upload (ini adalah hack karena anda tidak't harus melakukan full round-trip ke server dan kembali, tapi setidaknya ia bekerja).
Jika anda bersedia untuk menggunakan Flash (yang tersedia cukup banyak di mana saja dan pada banyak platform), anda dapat mengatasi hampir semua masalah ini. Cepat googling muncul dua seperti komponen, keduanya gratis dan open source. Saya tidak pernah menggunakan salah satu dari mereka, tapi mereka terlihat baik. BTW, Flash isn't tanpa masalah yang baik, misalnya ketika menggunakan multi-file uploader untuk slide share, browser yang terus-menerus menerjang pada saya :-(
Mungkin solusi terbaik saat ini adalah untuk mendeteksi secara dinamis jika pengguna memiliki Flash, dan jika itu's kasus, memberikan versi flash uploader, sementara masih membuat itu mungkin untuk memilih HTML dasar satu.
HTH
Masalahnya di sini adalah bahwa browser khusus bekerja untuk memblokir sesuatu yang mengubah dasar upload file input kontrol. Anda dapat't mengubahnya dengan javascript misalnya.
Alasannya adalah keamanan - jika aku bisa script ini saya bisa membangun sebuah halaman yang ketika anda mengunjungi mengirimku berbagai file dari hard disk. Tidak bagus.
Ada berbagai cara pada saat ini, tetapi mereka're yang berbeda antara IE dan FX (I don't tahu tentang Safari, Opera, dll).
Lihatlah apa yang <http://www.gmail.com> tidak di IE dan FX ketika anda melampirkan sesuatu ke e-mail.
Saya ingin melihat bahwa sampah "Isi" tombol - ini memberitahu saya bahwa saya'm tidak akan membiarkan sesuatu yang tak terduga.
Memang benar, file upload control pasti di belakang kali. Mudah-mudahan ini akan dibahas dalam masa depan asp.net versi.
Meskipun biaya uang, saya telah menemukan Telerik tanggal control untuk memiliki semua fungsi yang anda cari, termasuk styling dan update progress (itu juga mengoptimalkan memori besar untuk upload).