文件名不是从fileuploader获取的。我从fileuploader上传图像并将该图像加载到一个盒子中,此时它可以正常工作。但是当我尝试保存它时,我没有从fileuploader获得该文件名
<div class="box box-right" style="width:19%">
<div>
<asp:Image ID="Avatar" runat="server" Height="157px" Width="177px" />
</div>
<div class="button">
<asp:FileUpload ID="FileUpload1" style="width:169px" onchange="previewFile()" runat="server" />
</div>
</div>
在aspx页面中:
fileName = FileUpload1.FileName;
if (FileUpload1.HasFile)
{
fileName = FileUpload1.FileName;
string fileName1 = Path.GetFileName(FileUpload1.PostedFile.FileName);
newfile = "images/" + fileName;
FileUpload1.PostedFile.SaveAs(Server.MapPath("~/images/") + strname);
}
答案 0 :(得分:0)
您尚未提供要获取的异常或错误,而是说not Using Update Panel
然后您可以在c#
中这样做
aspx
<form id="form1" runat="server">
<asp:FileUpload id="FileUpload1" runat="server" />
<asp:Button runat="server" id="UploadButton" text="Upload" onclick="UploadButton_Click" />
</form>
在您后面的代码中
protected void UploadButton_Click(object sender, EventArgs e)
{
if(FileUpload1.HasFile)
{
try
{
string filename = Path.GetFileName(FileUpload1.FileName);
FileUploadControl.SaveAs(Server.MapPath("~/") + filename);
}
catch(Exception ex)
{
}
}
}
或通过javascript
这样
var fileName = document.getElementById("<%= FileUpload1.ClientID %>");
或
var fileName = document.getElementById("FileUpload1").value;
答案 1 :(得分:0)
FileUpload1.PostedFile.SaveAs(Server.MapPath(“〜/ images /”)+ strname);
您使用了这一行,并使用“ strname”保存了文件,现在我在代码中的任何地方都看不到strname的值。
您有这个
fileName = FileUpload1.FileName;
string fileName1 = Path.GetFileName(FileUpload1.PostedFile.FileName);
所以你不应该使用
FileUpload1.PostedFile.SaveAs(Server.MapPath("~/images/") + fileName );