如何:响应 TextBox Web 服务器控件中的更改

更新:2007 年 11 月

在用户输入信息之后离开 TextBox Web 服务器控件时,控件将引发一个事件,您可以对这一事件做出响应。

2589b44c.alert_note(zh-cn,VS.90).gif说明:

TextBox Web 服务器控件并非每当用户输入一个键击就引发事件,而是仅当用户离开该控件时才引发事件。可以让 TextBox 控件引发您在客户端脚本中处理的客户端事件,这可能有助于响应单个键击。有关详细信息,请参见 ASP.NET 网页中的客户端脚本

响应 TextBox 控件中的更改

  • TextBox 控件的 TextChanged 事件创建一个事件处理程序。

    默认情况下,TextChanged 事件并不马上导致向服务器发送 Web 窗体页。而是当下次发送窗体时在服务器代码中引发此事件。若要使 TextChanged 事件引发即时发送,请将 TextBox 控件的 AutoPostBack 属性设置为 true。

    2589b44c.alert_note(zh-cn,VS.90).gif说明:

    若要在选中 TextBox 控件时将其发送到服务器,浏览器必须支持 ECMAScript(JScript、JavaScript),并且用户的浏览器要启用脚本撰写。

    下面的代码示例演示如何响应 TextBox 控件中的更改。代码将在一个标签中显示控件的内容。

    2589b44c.alert_security(zh-cn,VS.90).gif安全说明:

    Web 窗体页中的用户输入可能包括潜在有害的客户端脚本。默认情况下,Web 窗体页验证用户输入是否不包括脚本或 HTML 元素。有关更多信息,请参见如何:通过对字符串应用 HTML 编码在 Web 应用程序中防止脚本侵入

    Protected Sub TextBox1_TextChanged(ByVal sender As Object, _
            ByVal e As System.EventArgs) Handles TextBox1.TextChanged
       Label1.Text = Server.HtmlEncode(TextBox1.Text)
    End Sub
    
    protected void TextBox1_TextChanged(object sender, EventArgs e)
    {
       Label1.Text = Server.HtmlEncode(TextBox1.Text);
    }
    

请参见

参考

TextBox Web 服务器控件概述