Iva*_* Li 1 asp.net gridview triggers updatepanel
目前,我有一个供jQuery Dialog使用的UpdatePanel,其中包含一个GridView。
GridView在页脚和EmptyDataTemplate中包含一个FileUpload控件
为了使FileUpload控件能够在javascript中工作,我知道我们需要触发器。
但是,我想分配为触发器的按钮在GridView的模板中...
单击btnAdd按钮后,将保存FileUpload控件中的文件。
这是代码:
<asp:UpdatePanel ID="upnlEditExpense" runat="server">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnAdd"/>
</Triggers>
......................
........................
.........................
<asp:GridView runat="server" ID="grdExpense" ShowHeader="True" ShowFooter="True"
AutoGenerateColumns="False">
<Columns>
...................
<asp:TemplateField>
<FooterTemplate>
<asp:LinkButton runat="server" ID="btnAdd" Text="Add" OnClick="btnAdd_Click"></asp:LinkButton>
</FooterTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</asp:UpdatePanel>
Run Code Online (Sandbox Code Playgroud)
如果我将按钮ID像这样直接放在触发器的控件ID中,则会出现错误,提示找不到btnAdd ...
我应该怎么做才能使FileUpload控件正常工作?
小智 5
这有效
protected void grdExpense_RowCreated(object sender, GridViewRowEventArgs e)
{
LinkButton btnAdd = (LinkButton)e.Row.Cells[0].FindControl("btnAdd");
if (btnAdd != null)
{
ScriptManager.GetCurrent(this).RegisterPostBackControl(btnAdd);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6080 次 |
| 最近记录: |