我正在尝试加载一个asp图像框<asp:Image ID="imgPicture" width="200" height="200" runat="server" />
用户使用 asp.net 文件上传控件选择图像后显示图像 <asp:FileUpload ID="fluPicture" runat="server" OnChange="LoadImage(this.value, 'imgPicture');" Width="200"/>
HTML
<asp:Image ID="imgPicture" width="200" height="200" runat="server" />
<asp:FileUpload ID="fluPicture" runat="server" OnChange="LoadImage(this.value, 'imgPicture');" Width="200"/>
Javascript
<script type="text/javascript">
function LoadImage(path, img) {
imgPrev = document.images[img];
imgPrev.src = path;
}
</script>
图像不会加载到 imgPicture 控件中。我还注意到,通过向 javascript 函数添加警报来警报路径和图像,该路径是 C:\fakepath\ImageName.jpg
。我不确定为什么它说 fakepath。
感谢任何帮助。另请注意,该项目背后有一个 C# 代码文件。
最佳答案
在您输入所有内容后,我已将 FileInput 控制代码更改为如下:
<asp:FileUpload ID="fluPicture" onchange="if (confirm('Upload ' + this.value + '?')) this.form.submit();" runat="server" Width="200"/>
然后,我向 Page.OnLoad 事件添加了一个测试,以确定文件是否已准备好 已上传。
if (fluPicture.PostedFile != null && fluPicture.PostedFile.ContentLength > 0) UploadImage();
然后我允许 UploadImage() 方法上传图像,存储它,然后将图像框的 url 设置为上传图像的 url。
感谢大家的帮助和意见。另外,我很欣赏 jQuery 的想法。在这种情况下,我只需要一些快速而肮脏的东西来完成工作。
关于c# - 使用 Javascript 从 ASP.NET FileUpload 控件加载图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5941045/