嘿,我只是想知道我的语法是否错误
<asp:UpdatePanel ID="UpdatePanel2"
runat="server"
UpdateMode="Always">
<ContentTemplate>
<asp:textbox id="searchProductName" runat="server"></asp:textBox> <asp:Button ID="btnProductSearch" runat="server" Text="Search Product Name" CssClass="search" OnClick="ProductSearch_Click" UseSubmitBehavior="true" CausesValidation="false" />
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnProductSearch" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
和我的OnClick方法
Protected Sub ProductSearch_Click(ByVal sender As Object, ByVal e As EventArgs)
' Filter by ProductName
If searchProductName.Text.Length > 0 Then
srcProductListPerCustomer.FilterExpression = " (productName like '%" + searchProductName.Text.ToString & "%')"
productListTable.DataBind()
Else
srcProductListPerCustomer.FilterExpression = ""
productListTable.DataBind()
End If
End Sub
当我点击按钮时,问题是什么都没发生。没有Ajax的按钮工作正常
答案 0 :(得分:0)
您的按钮不需要位于UpdatePanel
。 UpdatePanel
中的控件应该是要异步更新的控件。将UpdatePanel
放在您正在更新的GridView
周围,并以相同的方式使用AsyncPostBackTrigger
。
最好让UdpatePanel尽可能小;其中的控件越少,从服务器发回的HTML就越少(带宽越少,请求/响应时间越快)。 PostBackTriggers可以引用UpdatePanel外部的控件而没有任何问题。