基本上,比这更好的东西:
首先,browse
每个浏览器上的按钮看起来都不同.与submit
表单上的按钮不同,您必须采用一些hack-y方式来设置它.
其次,没有进度指示器显示文件已上传了多少.您通常必须实现某种客户端方式来禁用多个提交(例如,将提交按钮更改为显示"表单提交...请等待."的禁用按钮)或闪烁一个巨大的警告.
有没有好的解决方案,不使用Flash或Java?
Yaakov:该产品看起来正是我正在寻找的,但成本是1000美元,它专门用于ASP.NET.
是否有任何开源项目涵盖相同或类似的功能?
如果您不想涉及其他技术(如Flash,Java或ActiveX),文件上传框就是我们目前所处的位置.
使用纯HTML,您几乎只限于您所描述的体验(没有进度条,双提交等).如果你愿意使用一些javascript,你可以通过提供上传正在进行的反馈甚至显示上传进度来解决一些问题(这是一个黑客,因为你不应该做一个完整的往返到服务器和后面,但至少它工作).
如果您愿意使用Flash(几乎可以在任何地方和许多平台上使用),您可以克服几乎所有这些问题.一个快速的谷歌搜索出现了两个 这样的组件,它们都是免费和开源的.我从来没用过任何一种,但看起来很棒.顺便说一句,Flash也不是没有问题,例如当使用多文件上传器进行幻灯片共享时,浏览器不停地在我身上崩溃:-(
目前最好的解决方案可能是动态检测用户是否有Flash,如果是这种情况,请给她上传的flash版本,同时仍然可以选择基本的HTML版本.
HTH