我在更新面板中有一个Telerik RadGrid。辐射网格中的一列具有链接按钮。我想在单击按钮时导出 excel 文件。我已经编写了代码,当我单击链接按钮时,页面刷新并且不会进行下载。我尝试使用锚标签而不是链接按钮,但它不起作用。
我的 ASP.net 代码在这里
<telerik:RadAjaxPanel runat="server" LoadingPanelID="RadAjaxLoadingPanel1">
<telerik:RadGrid ID="GridViewAllRequests" runat="server" CssClass="ms-listviewtable" border="0" BorderStyle="None" HeaderStyle-BorderStyle="None" CellPadding="4" GridLines="None" Width="100%"
AutoGenerateColumns="False" AllowFilteringByColumn="True" MasterTableView-ShowFooter="false" ShowStatusBar="false"
AllowPaging="True" PageSize="25" AllowSorting="true" MasterTableView-AllowMultiColumnSorting="true" EnableLinqExpressions="false"
ShowHeaderWhenEmpty="true" ShowFooter="false" DataSourceID="LinqDsGridViewAllRequests" OnItemCreated="RadGrid_ItemCreated" On>
<GroupingSettings CaseSensitive="false"></GroupingSettings>
<MasterTableView DataSourceID="LinqDsGridViewAllRequests" DataKeyNames="RequestName" AutoGenerateColumns="false" PagerStyle-ShowPagerText="false" PagerStyle-Mode="NextPrevAndNumeric" HeaderStyle-Font-Bold="true" HeaderStyle-ForeColor="Blue" ShowFooter="false">
<Columns>
<telerik:GridTemplateColumn DataField="RequestName" HeaderText="Request Name" UniqueName="RequestName" HeaderStyle-CssClass="ms-vh2"
SortExpression="RequestName">
<ItemTemplate>
<asp:LinkButton ID="lblRequestName" ForeColor="Blue" CommandArgument='<%# Eval("RequestName") %>' CommandName="onclick" OnCommand="RequestNameLinkButton_Click" runat ="server" Text='<%# Eval("RequestName") %>'></asp:LinkButton>
</ItemTemplate>
<HeaderStyle CssClass="ms-vh2" />
<ItemStyle CssClass="talCell4Grid" HorizontalAlign="Left" VerticalAlign="Top" />
</telerik:GridTemplateColumn>
在代码中,lblRequestName 是我想用来下载 excel 的链接按钮。
>尝试使用if (!IsPostBack)
将所有代码包装在Page_Load
函数中,它可以防止单击按钮时页面重新加载。
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//some code about page load
}
}