作者flypen (只爱风和云)
看板C_Sharp
标题[问题] CustomValidator
时间Wed Jan 9 15:33:14 2008
请问一下如果要在textbox里面判断输入是不是6至
12个字元的小写英文字母、数字组合
如果使用CustomValidator
目前大概是写到这样
欲申请之帐号:<asp:TextBox ID="TextBox1" runat="server"
Width="138px"></asp:TextBox>
<asp:CustomValidator ID="CustomValidator1"
ControlToValidate="TextBox1" runat="server" OnServerValidate="CheckAccount"
ErrorMessage="帐号格式不正确" />
<asp:RequiredFieldValidator ID="RequiredFieldValidator12"
runat="server" ControlToValidate="TextBox1" ErrorMessage="帐号不可空白
"></asp:RequiredFieldValidator><br />
<br />
public void CheckAccount(object obj,ServerValidateEventArgs e)
{
int count = 3;
int count1 = 0;
String name;
name = (string)Convert.ChangeType(TextBox1.Text, typeof(string));
int i = 1, j = 1;
while (i <= name.Length)
{
if (Regex.Match(name.Substring(0, i), "\\W").Success)
{
count = 3;
break;
}
else
count = 0;
i++;
}
while (j <= name.Length)
{
if (Regex.Match(name.Substring(0, j), "\\d").Success)
{
count1 = 3;
}
else
count1 = 0;
j++;
}
if (name.Length >= 6 && name.Length <= 12)
{
if (count == 0 && count1==3)
e.IsValid = true;
else
e.IsValid = false;
}
else
e.IsValid = false;
}
不过目前只有输入空白的时候会显示错误讯息
如果有输入数字的话,他好像不会显示
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.30.203
1F:推 tomex:CustomValidator应该要研究绑至jscript才是正途呀... 01/12 03:11