C # code:
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 );
}
// Reload the verifyrenderinginserverform method. Otherwise, the following error message is displayed during running: the "gridview1" control of the "gridview" type must be placed in the form tag with runat = server"
Public override void verifyrenderinginserverform (control)
{
// Override verifyrenderinginserverform.
}
Front-end code:
<Asp Tutorial: updatepanel id = "updatepanel1" runat = "server">
<Contenttemplate>
<Span style = "color: #000000; font-family: ">
<Asp: button id = "btn_export" runat = "server" text = "Export" css tutorial class = "button100" width = "80px" onclick = "button6_click"/> </span>
<Asp: gridview id = "gv_oil" runat = "server"
Cellpadding = "4" forecolor = "#333333" gridlines = "none" width = "100%">
<Footerstyle backcolor = "#507cd1" font-bold = "true" forecolor = "white"/>
<Rowstyle backcolor = "# eff3fb"/>
<Pagerstyle backcolor = "# 2461bf" forecolor = "white" horizontalalign = "center"/>
<Selectedrowstyle backcolor = "# d1ddf1" font-bold = "true" forecolor = "#333333"/>
<Headerstyle backcolor = "#507cd1" font-bold = "true" forecolor = "white"/>
<Editrowstyle backcolor = "# 2461bf"/>
<Alternatingrowstyle backcolor = "white"/>
</Asp: gridview>
</Contenttemplate>
<Triggers>
</Triggers>
</Asp: updatepanel
Excel in ajax cannot be exported in the original method, because response in asynchronous mode. write errors occur. When loading a page, you can register the export button as a synchronization method. At the same time, you cannot register the export button in updatepanel to solve this problem. [This solution can be solved with ajax provided by vs. After finding ajax on the Internet for a long time, many of them use third-party ajax (not provided by vs) to export excel.