验证标题是否存在(TextBox控件失去焦点验证)

首先解释两个属性,

AutoPostBack 属性用于设置或返回当用户在 TextBox 控件中按 Enter 或 Tab 键时,是否发生自动回传到服务器的操作。

如果把该属性设置为 TRUE,则启用自动回传,否则为 FALSE。默认是 FALSE。

ontextchanged:失去焦点可以出发事件的一个东西

<asp:TextBox ID="txtTitle" runat="server" Width="400px" ValidationGroup="add"
                                     MaxLength="24"  AutoPostBack="true" ontextchanged="txtTitle_TextChanged"></asp:TextBox>

<b><asp:Label ID="lblMessage" runat="server" Text=""></asp:Label></b>

 protected void txtTitle_TextChanged(object sender, EventArgs e)
    {
        bool result = CheckTitle(txtTitle.Text.Trim());
        if (result == true)
        {
            lblMessage.Text = "可使用!";
        }
        if (result == false)
        {
            lblMessage.Text = "标题已存在";
        }

    }
    public static bool CheckTitle(string title)
    {
        DataTable dt = DB.GetDataTable("s_title", "table1", "s_title='"+title+"'", "");
        if (dt.Rows.Count > 0)
        {
            return false;
        }
        else
            return true;
    }

其中,这里较为关键的就是AutoPostBack="true",如果没有它的话,就不会实现验证了 

原文地址:https://www.cnblogs.com/candyzhmm/p/4347945.html