在ASP.NET中上传图像

时间:2013-09-26 11:39:35

标签: jquery

我有一个上传控件和一个图像框。当我上传图片时,我需要在框中显示它。我的图片已上传,但未显示在框中。

上传图片的路径返回如下。

〜/图片/学生/ Student1.jpg

如何获取路径

照片/学生/ Student1.jpg

我上传的客户端功能如下。

$.ajaxFileUpload({
                        url: 'FileUpload.ashx?id=' + FileFolder + '&Mainfolder=Photos' + '&parentfolder=Student',
                        secureuri: false,
                        fileElementId: 'uplPhoto',
                        dataType: 'json',
                        success: function (data, status) {

                            if (typeof (data.error) != 'undefined') {
                                if (data.error != '') {
                                    alert(data.error);
                                } else {

                                    $('#hdnFullPhotoPath').val(data.upfile);
                                    $('#uplPhoto').val("");
                                    $('#lblPhotoName').text('Photo uploaded successfully')

                                    $('#Image1').attr('src', data.upfile);
                                    alert(data.upfile);
                                }
                            }


                        },
                        error: function (data, status, e) {
                            alert(e);
                        }
                    });
                }

                else {
                    alert('The photo ' + filename + ' already exists');
                    return false;
                }
            }
        }
        else {
            alert('You can upload only jpg,jpeg,pdf,doc,docx,txt,zip,rar extensions files.');
        }
        return false;

    }

2 个答案:

答案 0 :(得分:0)

在FileUpload.ashx中:

Dim fileName As String = System.IO.Path.GetFileName(FileUpload1.PostedFile.FileName)
FileUpload1.PostedFile.SaveAs(Server.MapPath(("~/Photos/Student/" + fileName)))

将一个图像控件添加到您的表单并从代码隐藏中调用它,如图所示将目录名称存储在某个会话值中并获取它

Image1.ImageUrl = "~/Photos/Student/" & Session("tempDir").ToString & "/" & filename

答案 1 :(得分:0)

全部,感谢您的时间和帮助。波浪号(〜)符号是问题 - 文件的路径无法识别。所以我修改了我的代码,用空格替换它。

var orgpath = data.upfile;
var photopath = orgpath.replace('~/', '');
$('#<%= ImgFacultyPhoto.ClientID%>').attr('src', photopath);