2010-10-29 130 views
2

我们的webform上传了一个文件,并且只是一个普通的图片框。现在我们已经有了保存图片和检索图片的代码,但是如何在不保存图片的情况下显示他们选择的图片,然后刷新页面并显示图片?这是一个JavaScript的东西?显示用户刚挑选的图片?

在此先感谢。

+0

什么是“普通图片框” - 一个'img'元素?他们选择的图片是指用户上传的图片吗? – LarsH 2010-10-29 19:09:00

+0

它是一个图像控件。我希望它在选择它后立即显示图像。基本上,显示它之前它被上传 – broke 2010-10-29 19:10:56

+0

需要不同的技术 – epascarello 2010-10-29 19:32:32

回答

5

大多数浏览器不允许这样。提交提交将与表格一起提交,但不会提供给JavaScript。这是为了防止JavaScript访问本地文件。

你最好的解决办法就是使用AJAX上传的文件,然后从服务器中检索和显示。该解决方案使初始视图花费更长时间,但如果用户决定它是他们想要的文件,则可以避免再次将其发送到服务器,并将其从临时存储区域移动到永久存储区域。

+0

+1之外的任何Ajax建议。绝对是正确的路要走。 – 2010-10-29 19:23:18

+0

好的建议。谢谢。 – broke 2010-10-29 19:37:31

3

这绝对是不使用JavaScript可能。它可能可能与 Flash上​​传(但我真的不知道Flash)。 JavaScript没有任何对主机文件系统的直接访问。


关于第二个想法 - 有可能注入的img标签,其srcfile:// URL。不过,我不确定这一点。现在检查。

+0

闪存不允许,要么,都只能访问一个文件名,并在POST请求提交的文件。 – 2010-10-29 19:14:14

+0

哦,这很糟糕。我希望这不会变得复杂。 – broke 2010-10-29 19:14:32

+2

是的,安全限制可以让事情变得更难,但他们肯定是有原因的。 – 2010-10-29 19:15:17