首先解释两个属性,
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",如果没有它的话,就不会实现验证了