当前位置:编程学习 > C#/ASP.NET >>

FileUpload控件上传文件FileName属性第一次值为空

用FileUpload控件封装了一个上传文件的用户控件,文件上传部分代码如下:

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
                <ContentTemplate>
                    <asp:FileUpload ID="fu_file" runat="server" Width="400px" size="46"  />
                    <asp:Button ID="btn_Up" runat="server" Height="24px" Text="上传" Width="104px" OnClick="btn_Up_Click" />
                </ContentTemplate>
                <Triggers>
                    <asp:PostBackTrigger ControlID="btn_Up" />
                </Triggers>
            </asp:UpdatePanel>

将控件放入页面后,在第一次上传附件的时候,提示fileupload的filename属性为空值,第二次上传正常,而且上传的文件也是正确的。
有人遇到过没?给个思路,试了很多方法了。所有用到这个控件的页面上传都有这个问题。如果我在第一次进入页面的时候,首先将页面刷新一次,文件上传就是正常的。一直找不到原因,但是不封装,直接在页面使用fileupload控件,上传是没有问题的。由于有多个页面使用,不封装的话操作起来太麻烦,希望大家给个意见。 fileupload filename为空 aspx 附件上传 --------------------编程问答-------------------- refer : http://leehai.blog.51cto.com/757045/153736 --------------------编程问答-------------------- 有,
解决办法,是拿掉UpdatePanel。 --------------------编程问答--------------------
引用 1 楼 guwei4037 的回复:
refer : http://leehai.blog.51cto.com/757045/153736

  <Triggers>
                    <asp:PostBackTrigger ControlID="btn_Up" />
                </Triggers>
加triggers节点和在后台注册有区别么? --------------------编程问答-------------------- 页面加载的时候在page_load里加上if(!ispostback)试试,有可能是这个问题 --------------------编程问答--------------------
引用 3 楼 cwaspnet 的回复:
Quote: 引用 1 楼 guwei4037 的回复:

refer : http://leehai.blog.51cto.com/757045/153736

  <Triggers>
                    <asp:PostBackTrigger ControlID="btn_Up" />
                </Triggers>
加triggers节点和在后台注册有区别么?


效果一样。 --------------------编程问答--------------------
引用 2 楼 insus 的回复:
有,
解决办法,是拿掉UpdatePanel。

问题是拿不掉,要拿掉这个得改母版页,影响的页面就太多了 --------------------编程问答--------------------
引用 5 楼 guwei4037 的回复:
Quote: 引用 3 楼 cwaspnet 的回复:

Quote: 引用 1 楼 guwei4037 的回复:

refer : http://leehai.blog.51cto.com/757045/153736

  <Triggers>
                    <asp:PostBackTrigger ControlID="btn_Up" />
                </Triggers>
加triggers节点和在后台注册有区别么?


效果一样。

问题不是不能上传,是第一次上传不了,第一次上传获取不到文件,后面就正常了…… --------------------编程问答--------------------
引用 7 楼 cwaspnet 的回复:
Quote: 引用 5 楼 guwei4037 的回复:

Quote: 引用 3 楼 cwaspnet 的回复:

Quote: 引用 1 楼 guwei4037 的回复:

refer : http://leehai.blog.51cto.com/757045/153736

  <Triggers>
                    <asp:PostBackTrigger ControlID="btn_Up" />
                </Triggers>
加triggers节点和在后台注册有区别么?


效果一样。

问题不是不能上传,是第一次上传不了,第一次上传获取不到文件,后面就正常了……


那你自己在后台试试看撒,实践出真知! --------------------编程问答--------------------
引用 6 楼 cwaspnet 的回复:
Quote: 引用 2 楼 insus 的回复:

有,
解决办法,是拿掉UpdatePanel。

问题是拿不掉,要拿掉这个得改母版页,影响的页面就太多了


就此本页的FileUpload控件和上传控件不要放在UpdatePanel内。
与其它页面没有关系。
--------------------编程问答--------------------
引用 8 楼 guwei4037 的回复:
Quote: 引用 7 楼 cwaspnet 的回复:

Quote: 引用 5 楼 guwei4037 的回复:

Quote: 引用 3 楼 cwaspnet 的回复:

Quote: 引用 1 楼 guwei4037 的回复:

refer : http://leehai.blog.51cto.com/757045/153736

  <Triggers>
                    <asp:PostBackTrigger ControlID="btn_Up" />
                </Triggers>
加triggers节点和在后台注册有区别么?


效果一样。

问题不是不能上传,是第一次上传不了,第一次上传获取不到文件,后面就正常了……


那你自己在后台试试看撒,实践出真知!

方法不行,后台注册的问题比triggers问题更大,文件上传不了…… --------------------编程问答-------------------- 刚刚完成的演示:


http://www.cnblogs.com/insus/p/3208744.html
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,