Asp.net 向注册组件内的文本框添加ContextChanged事件
我正在尝试向注册组件添加用户名可用性检查器,我使用了以下方法:Asp.net 向注册组件内的文本框添加ContextChanged事件,asp.net,.net,registration,Asp.net,.net,Registration,我正在尝试向注册组件添加用户名可用性检查器,我使用了以下方法: protected void checkUser(object sender, EventArgs e)//checking the user name avaliabilty { if (Membership.GetUser(UsernameCheck.Text) != null) { usernameResult.Text = "User Name already Taken";
protected void checkUser(object sender, EventArgs e)//checking the user name avaliabilty
{
if (Membership.GetUser(UsernameCheck.Text) != null)
{
usernameResult.Text = "User Name already Taken";
}
else
{
usernameResult.Text = "User Name Avaliable";
}
}
这是我的aspx:
<tr>
<td align="right">
<asp:Label ID="UserNameLabel" runat="server" AssociatedControlID="UserName"></asp:Label>
</td>
<td>
<asp:TextBox ID="UserName" runat="server" BorderStyle="None" BorderWidth="1px"
CssClass="SuserNameBox" AutoCompleteType="Disabled" AutoPostBack="true" OnTextChanged="checkUser" >Name Extension</asp:TextBox>
<asp:RequiredFieldValidator ID="UserNameRequired" runat="server"
ControlToValidate="UserName" ErrorMessage="User Name is required."
ToolTip="User Name is required." ValidationGroup="mainSignUp">*</asp:RequiredFieldValidator>
</td>
</tr>
名称扩展名
*
但是ContextChanged事件不会触发(我用一个外部文本框进行了尝试,效果很好)
所以我的问题是如何在注册组件中触发一个元素事件
使用asp.NET3.5
谢谢
名称扩展名
类似这样的情况。不确定这是否是问题所在,但是你真的想在一个更新面板中这样做以获得ajax支持吗?你是否尝试过用触发器将其放入一个更新面板中?@Oskar Kjellin-我在一个更新面板中尝试过,但仍然没有work@Chad-你能解释一下吗?我试过了,它给了我这个错误
在上找不到名为“OnTextChanged”的事件UpdatePanel中触发器的关联控件“用户名”
Sorry事件刚刚更改
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<asp:TextBox ID="UserName" runat="server" BorderStyle="None" BorderWidth="1px"
CssClass="SuserNameBox" AutoCompleteType="Disabled" AutoPostBack="true" OnTextChanged="checkUser" >Name Extension</asp:TextBox>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="UserName" EventName="TextChanged" />
</Triggers>
</asp:UpdatePanel>