There appear to be a number of options missing from this control that keep it from being really powerful. For example:
- there does not appear to be a method in which to access the files currently selected, in order to remove one.
- If you want to limit the file types selected, you have to cancel the entire selection event, which will only piss off end users.
-The only way to show a "remove" button is to have something post back to the server, which makes no sense if AutoUpload is false.
- If you want to clear the list of uploaded items, you have to use jQuery to remove the LI's (WTF?)
My proposed changes:
- Have a Remove button regardless of whether there us a Remove URL set or not. If there is not a Remove URL set, disable the Remove/cancel button while files are being uploaded.
- Add a clear() method to remove all files, uploaded or otherwise.
- Add a getFiles() method to get a list of all in-memory files being managed.
- Add a remove(file) method, so that files that were accidentally selected can be removed in the Select event handler without having to choose between adding a server-side call and pissing off the end user.
- Add a setFileTypes() method that lets you pass in an array of file types to accept. All others will be automatically removed from the collection.
- Make the Drag&Drop capability set the drop zone visibility by default. You can manage that in jQuery without making me add more styles manually.
Thank you for your consideration.