今天碰到一个问题:
FileUpload放在updatepanel中,回调时发现上其属性hasfile为false。解决方案如下:
在UpdatePanel里面需要上传文件。大家应该知道UpdatePanel里面是不可以上传文件的!不过我们可以变换下就可以了!
方案一、如果将scriptmanager的enablepartialrending设为false则可以正确上传,这个方法最简单,但是会有缺 陷,就是在同一个页面上的多个UpdatePanel不可以独自刷新了。另外,当你的UpdatePanel中存在Validator的话,会造成整个页 面postback,这个问题似乎是Altas的一个bug.
方案二、摘自http://www.netfocus.cn/article950.html
1:主页面中使用UpdatePanel,然后UpdatePanel里面放置的不是FileUpload控件,而是一个Iframe
2:这个iframe在链接一个新的页面,那个页面里面有FileUpload控件。
3:上传完毕后,告诉主页面上传得结果先看一个直接使用FileUpload的例子:这个例子里面,服务端是无法找到上传文件的。<atlas:UpdatePanel ID="up1" Mode="Conditional" runat="server"><ContentTemplate><asp:FileUpload ID="FileUpload1" runat="server" /><asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />< SPAN>ContentTemplate>< SPAN>atlas:UpdatePanel>看看,我们该如何实现
1:新建主页面Default.aspx在适当的位置,放置一个上传附件的UpdatePanel区域<atlas:UpdatePanel ID="up_attachment" Mode="Conditional" runat="server"><ContentTemplate><iframe id="file" name="file" src="attachment.aspx">< SPAN>iframe>< SPAN>ContentTemplate>< SPAN>atlas:UpdatePanel>
2:新建上传文件的页面attachment.aspx,然后放上FileUpload控件<div><asp:FileUpload ID="FileUpload1" runat="server" /><asp:Button ID="Button1" runat="server" Text="OK" OnClick="Button1_Click" />< SPAN>div>
3:在attachment.aspx里面,上传文件之后调用主页面的js,报告上传情况。这是函数原型:<script>window.top.callBack(fileName);< SPAN>script>
4:Default.aspx主页面里面增加这个函数,处理返回值<script>function callBack(fileName){document.getElementById('Attach1').innerHTML=fileName;}< SPAN>script>
方案三
ASPX代码如下:(跟正常的代码是没有什么区别的!)
<asp:UpdatePanel ID="UpdatePanel1" unat="server">        
     <ContentTemplate>                        
             <asp:FileUpload ID="FileUpload1" runat="server" />    
                    <asp:Button ID="Button1" runat="server" Text="上传" οnclick="Button1_Click" />                                            </ContentTemplate>                
                                </asp:UpdatePanel>
C#代码如下:也是最关键的
InBlock.gifPostBackTrigger trigger = new PostBackTrigger();
InBlock.gif                        trigger.ControlID = Button1.UniqueID;
InBlock.gif                        UpdatePanel1.Triggers.Add(trigger);    
这里记得一定别放在if(!IsPostBack)里面。
下面说下c#代码:就是给UpdatePanel增加一个回发控件,那为什么要用Button1.UniqueID。是应为如果你这个控件放在一些面板控件里面,UpdatePanel是找不到回发控件的ID的。

本文出自 “lee” 博客,请务必保留此出处http://leehai.blog.51cto.com/757045/153736

转载于:https://www.cnblogs.com/freedom831215/archive/2011/01/24/1942981.html

UpdatePanel里使用FileUpload相关推荐

  1. 在updatepanel中使用fileupload控件

    FileUpload放在updatepanel中,回调时发现上其属性hasfile为false.解决方案如下: 方案一.如果将scriptmanager的enablepartialrending设为f ...

  2. UpdatePanel中用后台调用Javascript

    UpdatePanel中用后台CS代码调用JS代码,先执行控件事件,后触发JS 页面中加入了UpdatePanel后,Response.Write("<script>functi ...

  3. ASP.Net WebForm温故知新学习笔记:二、ViewState与UpdatePanel探秘

    原文地址:http://www.cnblogs.com/edisonchou/p/3901559.html 开篇:经历了上一篇<aspx与服务器控件探秘>后,我们了解了aspx和服务器控件 ...

  4. UpdatePanel 的 UpdateMode 和 ChildrenAsTriggers(较好的总结了前面几篇博客的内容)

    一个 Button 位于 UpdatePanel1 中,一个 Label 位于 UpdatePanel2 中,那么,Button 是否可以通过异步回送来更新 Label 呢?默认是可以的. Updat ...

  5. c#调用javascript的方法,有Updatepanel的情况

    如何在C#方法中调用JavaScript方法 Page.RegisterClientScriptBlock() Page.RegisterStartupScript() Response.Write( ...

  6. c#--使用FileUpload控件上传图片

    利用.net里面的FileUpload控件上传图片到服务器, 我的Default.aspx文件里面除了添加这个控件外还用了一个Button控件, 用以实现上传.基本步骤如下: 1.首先是判断FileU ...

  7. UpdatePanel的各种情况

    UpdatePanel的各种情况(分为:按钮和UpdatePanel) 1.按钮的3个位置    1.按钮在所有UpdatePanel外部,刷新整个页面(所有的UpdatePanel都会刷新,不管是否 ...

  8. 浅谈UpdatePanel

    这是我以前刚学习asp.net ajax的时候总结的,如果有什么错误的地方,请大家指出,以便我能早日改正. 1.  作用:   UpdatePanel控件用来控制页面的局部更新,这些更新依赖于Scri ...

  9. spring2.5 mvc使用注解upload上传文件

    对于spring mvc来说2.0以后大量使用注解确实简单很多,最近在一个项目使用spring mvc遇到上传文件问题,由于使用了注解所以网上没有找到相关使用注解上传文件的.官方文档又没有更新都是老的 ...

最新文章

  1. 想学单片机怎么入手?学单片机前先学什么?
  2. android 上传图片到服务器Tomcat(Struts2)
  3. 067_VFPage中Js与controller交互方式(二) RemoteAction
  4. c++ map 修改value_C++知识分享之STL容器:set 容器与 map 容器的简单应用
  5. React单页如何规划路由、设计Store、划分模块、按需加载
  6. mysql基础查询语法
  7. P4480-[BJWC2018]餐巾计划问题【三分,贪心】
  8. 四川大学金融转计算机,[请教]川大和西财哪个金融系好?!
  9. 反质数问题,求不大于n的最大反质数
  10. python opencv 膨胀_OpenCV-Python:形态学操作
  11. Mycat监控_监控平台安装Mycat-web_作为配置中心注册发现用---MyCat分布式数据库集群架构工作笔记0037
  12. RFID 是什么意思
  13. 右侧交易稳健获利的指标
  14. 关于登录chkdsk的方法
  15. opensips1.6.4+freeradius2.1.10+radiusclient0.5.6 problem do accounting
  16. limbo模拟器镜像Android,limbo模拟器win7镜像
  17. 软考-信息系统项目管理师-项目进度管理
  18. 什么叫51单片机最小系统
  19. SpringBoot中这样定义全局异常处理器Global Exception Handler
  20. 解决securecrt 登录后方向键,backspace,delete键为乱码

热门文章

  1. (转)浅析当今视频文件的格式
  2. Spinal Cage Fusion
  3. 生命游戏(Game of Life)描述
  4. nas servers
  5. formal method satisfiable check
  6. Hdoj Minimize The Difference
  7. 哪些CSS是可以被继承的--简单整理
  8. SSM框架中使用Spring的@Transactional注解进行事务管理
  9. 【C++基础 09】避免对象的拷贝
  10. 图解VS2010打包全过程