在用户使用asp.net fileupload控件<asp:Image ID="imgPicture" width="200" height="200" runat="server" />
<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
。我不确定为什么它说假路径。
感谢任何帮助。另请注意,此项目后面有一个C#代码文件。
答案 0 :(得分:2)
在完成所有输入后,我将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的想法。在这种情况下,我只需要快速而肮脏的东西来完成工作。
答案 1 :(得分:0)
在您回复邮件之前,您的文件不会上传,这听起来像您只是浏览文件,然后在回发/上传图片之前尝试获取缩略图。
答案 2 :(得分:-2)
ASP.Net(HTML)代码:
<asp:FileUpload ID="FileUpload1" runat="server" Height="22px" onchange="showImage()"/>
<asp:Image ID="Image1" runat="server" Width="200PX" Height="200PX" />
JAVASCRIPT代码:
function showImage()
{
// Get File Upload Path & File Name
var file = document.getElementById("FileUpload1");
// Set Image Url from FileUploader Control
document.getElementById("Image1").src = file.value;
// Display Selected File Path & Name
alert("You selected " + file.value);
// Get File Size From Selected File in File Uploader Control
var inputFile = document.getElementById("FileUpload1").files[0].size;
// Displaty Selected File Size
alert("File size: " + inputFile.toString());
}
我认为那可以帮到你。它完全在我的电脑上运行。