·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> ASP.NET网站开发 >> FileUpload无法赋值解决方案

FileUpload无法赋值解决方案

作者:佚名      ASP.NET网站开发编辑:admin      更新时间:2022-07-23

FileUpload无法赋值解决方案

FileUpload无法赋值解决方案

编写人:CC阿爸

2015-1-27

今天在这里,我想与大家一起分享如何处理fileupload控件不能赋值的问题。有兴趣的同学,可以一同探讨与学习一下,否则就略过吧。

相信大家在平时的asp.net开发项目中,肯定使用过fileupload控件。如下图

用户在上传完附档时,fileupload的地址栏会正常显示上传的路径,但是我们平时经常遇到页面刷新后,FileUpload之前选择的为空了,用户需要重新选择文件,很麻烦。另:上传完后,更新到数据,再加载画面时,地址栏又被清空了。

而且:出于安全的考虑,fileupload控件是不可赋值的。但我们可以采用其它方法来处理:

如:可增加一个textbox框,将fileupload的控件的宽度设置为0,

<tdclass="TableItem"><asp:TextBoxID="txtFileName"runat="server"/>

<asp:FileUploadID="FileUpload"runat="server"Width="0px"/></td><tdclass="TableItem"><asp:ButtonID="btnUpload"runat="server"Text="Upload"class="Button"OnClick="btnUpload_Click"/><asp:ButtonID="btnDownload"runat="server"Text="Download"class="Button"onclick="btnDownload_Click"/><asp:ButtonID="btnDelete"runat="server"Text="Delete"class="Button"onclick="btnDelete_Click"/>

</td>

并在pageload中加入以下代码:

this.FileUpload.Attributes.Add("onchange","document.getElementById('"+txtFileName.ClientID+"').value=this.value");

在FileUpload的onchange事件中把选择的文件路径赋值给TextBox,这里的TextBox和宽度为0的fileupload组合就变成了这个伪FileUpload,这里的TextBox可以随便赋值,页面刷新也不会清空.这样换一个思路,问题不就解决了。

欢迎加入技术分享群