首页 > 代码库 > FileUpload无法赋值解决方案
FileUpload无法赋值解决方案
FileUpload无法赋值解决方案
编写人:CC阿爸
2015-1-27
今天在这里,我想与大家一起分享如何处理fileupload控件不能赋值的问题。有兴趣的同学,可以一同探讨与学习一下,否则就略过吧。
相信大家在平时的asp.net开发项目中,肯定使用过fileupload控件。如下图
用户在上传完附档时,fileupload的地址栏会正常显示上传的路径,但是我们平时经常遇到页面刷新后,FileUpload之前选择的为空了,用户需要重新选择文件,很麻烦。另:上传完后,更新到数据,再加载画面时,地址栏又被清空了。
而且:出于安全的考虑,fileupload控件是不可赋值的。但我们可以采用其它方法来处理:
如:可增加一个textbox框,将fileupload的控件的宽度设置为0,
<td class="TableItem" ><asp:TextBox ID="txtFileName" runat="server" />
<asp:FileUpload ID="FileUpload" runat="server" Width="0px" />
</td>
<td class="TableItem" >
<asp:Button ID="btnUpload" runat="server" Text="Upload" class="Button" OnClick="btnUpload_Click" />
<asp:Button ID="btnDownload" runat="server" Text="Download" class="Button" onclick="btnDownload_Click" />
<asp:Button ID="btnDelete" runat="server" Text="Delete" class="Button" onclick="btnDelete_Click" />
</td>
<td class="TableItem" >
<asp:Button ID="btnUpload" runat="server" Text="Upload" class="Button" OnClick="btnUpload_Click" />
<asp:Button ID="btnDownload" runat="server" Text="Download" class="Button" onclick="btnDownload_Click" />
<asp:Button ID="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可以随便赋值,页面刷新也不会清空.这样换一个思路,问题不就解决了。
欢迎加入技术分享群
FileUpload无法赋值解决方案
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。