我有一个用户名TextBox和一个Label,当TextBox文本更改时,该标签应更新为(V或X)。仅当例如按下自动刷新页面的按钮时,标签才会更新。
这是代码:
<asp:TextBox ID="username" runat="server" OnTextChanged="checkUsername" Width="80%"></asp:TextBox>
<asp:Label ID="usernameCheck" runat="server" CssClass="checkL"></asp:Label>
和aspx.cs
protected void checkUsername(object sender, EventArgs e)
{
if (username.Text.Length < 3 || username.Text.Length > 15)
{
//---Label = X (in red)
usernameCheck.Text = "\u2715";
}
else
{
if (myBl.checkUsername(Convert.ToString(username)))
{
//---Label = X (in red)
usernameCheck.Text = "\u2715";
}
else
{
//---Label = V (in green)
usernameCheck.Text = "\u2713";
}
}
}
谢谢你的帮助。
您需要添加AutoPostBack="true"
到您的文本框。这将导致它回发并触发该服务器端事件。
尽管有很多更好的方法可以完成您要完成的任务,但大多数方法都不需要整页的回发。我会尝试使用javascript change事件并使用类似回调方法的方法进行AJAX调用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句