Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 通过HTTP POST和web表单上传文件的最佳方式是什么?_Html_Http_Forms_Post_Upload - Fatal编程技术网

Html 通过HTTP POST和web表单上传文件的最佳方式是什么?

Html 通过HTTP POST和web表单上传文件的最佳方式是什么?,html,http,forms,post,upload,Html,Http,Forms,Post,Upload,基本上,还有比这更好的东西: <input type="file" name="myfile" size="50"> 首先,browse按钮在每个浏览器上看起来都不一样。与表单上的submit按钮不同,您必须想出一些方法来设置表单的样式 其次,没有进度指示器显示文件上传了多少。您通常必须实现某种客户端方式来禁用多个提交(例如,将提交按钮更改为显示“表单提交…请稍候”的禁用按钮)或闪烁巨大警告 有没有不使用Flash或Java的好解决方案 :该产品看起来正是我想要的,但成本是10

基本上,还有比这更好的东西:

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

首先,
browse
按钮在每个浏览器上看起来都不一样。与表单上的
submit
按钮不同,您必须想出一些方法来设置表单的样式

其次,没有进度指示器显示文件上传了多少。您通常必须实现某种客户端方式来禁用多个提交(例如,将提交按钮更改为显示“表单提交…请稍候”的禁用按钮)或闪烁巨大警告

有没有不使用Flash或Java的好解决方案


:该产品看起来正是我想要的,但成本是1000美元,它专门用于
ASP.NET。
有没有涵盖相同或类似功能的开源项目?

没错,文件上传控制绝对落后于时代。希望这将在未来的asp.net版本中得到解决


虽然它需要一些钱,但我发现它拥有您所需要的所有功能,包括样式和进度更新(它还优化了大型上载的内存)。

如果您不想涉及Flash、Java或ActiveX等其他技术,文件上载框就是我们目前的位置

使用纯HTML时,您的体验非常有限(无进度条、双重提交等)。如果您愿意使用一些javascript,您可以通过反馈上传正在进行,甚至(这是一种黑客行为,因为您不必往返服务器,但至少它可以工作)来解决一些问题

如果您愿意使用Flash(它在任何地方和许多平台上都可以使用),您可以克服几乎所有这些问题。一个快速的谷歌搜索出现了组件,它们都是免费的和开源的。我从来没用过,但看起来不错。顺便说一句,Flash也不是没有问题,例如,当使用多文件上传器进行幻灯片共享时,浏览器不断地在我身上崩溃:-(

也许目前最好的解决方案是动态检测用户是否有Flash,如果是这样的话,给她上传器的Flash版本,同时仍然可以选择基本的HTML版本


HTH

你可以看看这个脚本。虽然它使用flash,但它看起来仍然很棒。

这里的问题是浏览器专门阻止任何更改基本文件上载输入控件的操作。例如,你不能用javascript更改它

原因是安全性——如果我可以编写脚本,我可以创建一个页面,当你访问它时,它会从你的硬盘上向我发送各种文件。这不太好

目前有各种各样的解决方法,但IE和FX之间是不同的(我不知道Safari、Opera等)

看看在IE和FX中,当您将某个内容附加到电子邮件时会发生什么

我想看看那个垃圾“浏览”按钮——它告诉我,我不会让任何意想不到的东西进来