ASP.NET Ajax Text Box с кнопкой не срабатывает - PullRequest
0 голосов
/ 04 августа 2011

Эй, просто интересно, если мой синтаксис здесь неправильный

<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

1 Ответ

0 голосов
/ 04 августа 2011

Ваша кнопка не обязательно должна быть в UpdatePanel.Элементы управления UpdatePanel должны быть элементами управления, которые должны обновляться асинхронно.Поместите ваш UpdatePanel вокруг GridView, который вы обновляете, и используйте AsyncPostBackTrigger таким же образом.чем меньше элементов управления внутри них, тем меньше HTML будет отправлено обратно с сервера (меньше пропускная способность, меньше время запроса / ответа).PostBackTriggers могут без проблем обращаться к элементам управления вне UpdatePanel.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...