Tôi có tình huống sau: Tôi có một hộp văn bản bên trong bảng cập nhật ajax. Bất cứ nơi nào người dùng gõ vào hộp văn bản tôi phải hiển thị một tin nhắn (thông báo khác nhau phụ thuộc vào dữ liệu người dùng đã nhập).Sự cố với hộp văn bản bên trong updatepanel - không gây ra sự kiện OnTextChanged
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Always">
<ContentTemplate>
<asp:TextBox ID="txtMyTexbox" runat="server" Width="500px" OnTextChanged="txtMyTexbox_TextChanged" AutoPostBack="true"></asp:TextBox>
<br />
<asp:Label ID="lblMessage" runat="server" CssClass="errorMessage" Visible="false">Hello World</asp:Label>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="txtMyTexbox" />
</Triggers>
</asp:UpdatePanel>
Trong phía máy chủ tôi đã viết như sau tại tải trang
ScriptManager.GetCurrent(this).RegisterAsyncPostBackControl(txtMyTexbox);
và phương pháp như thế này
protected void txtMyTexbox_TextChanged(object sender, EventArgs e)
{
if (.....)
{
lblMessage.Visible = false;
}
else
{
lblMessage.Visible = true;
}
}
Vấn đề của tôi bây giờ là: khi người dùng nhập vào textbox nó không gây ra sự kiện OnTextChanged.
Tôi có thiếu gì đó không?
lưu ý: chỉ khi tôi nhấn 'Tab' hoặc 'Enter' nó gây ra sự kiện OnTextChanged – DaDa