asp.net ajax下导出excel的解决办法

作者:袖梨 2022-06-25

c#代码:

protected void page_load(object sender, eventargs e)

{

        postbacktrigger trigger = new postbacktrigger();

        trigger.controlid = "btn_export";

        ((updatepanel)page.controls[0].findcontrol("updatepanel1")).triggers.add(trigger);

}  

 

//重载verifyrenderinginserverform方法,否则运行的时候会出现如下错误提示:“类型“gridview”的控件“gridview1”必须放在具有 runat=server 的窗体标记内”
  

  public override void verifyrenderinginserverform(control control)
    {
        //override verifyrenderinginserverform.
    }

 

前台代码:

<asp教程:updatepanel id="updatepanel1" runat="server">

        

                  

                    css教程class="button100" onclick="button6_click"/>

                   

                    cellpadding="4" forecolor="#333333" gridlines="none" >

                  

                   

                   

                   

                    

                    

                     

                     

         

          

          

ajax下excel不能按原来的方式导出,因为在异步方式下response.write是会出错的,所有在页面加载的时候可以将导出按钮注册为同步方式,同时在updatepanel里不能注册导出按钮,即可解决该问题。【对于vs自带的ajax此办法即可解决,网上找了n久,很多都是第三方ajax(非vs自带的)导出excel的解决办法

相关文章

精彩推荐