我正在尝试使用CompareValidator比较string.and的字段 服务器代码在Label1中写入结果。我尝试了整数和日期数据类型和它 工作正常,但当我把字符串不工作。当我在字段中放置整数时,它认为这是真的。如何使它工作。
<asp:TextBox ID="name" runat="server" CausesValidation="True" MaxLength="40"> </asp:TextBox>
<asp:CompareValidator
ID="CompareValidator1"
runat="server"
ControlToValidate="name"
Operator="DataTypeCheck"
Type="String">
</asp:CompareValidator>
<asp:Label ID="Label1" runat="server" Text="Label" Visible="True"></asp:Label>
<asp:Button ID="Button1" runat="server" Text="Изпрати" BackColor="Black" BorderColor="Black" BorderStyle="None" ForeColor="White" OnClick="PageValidate_SendMail" />
protected void PageValidate_SendMail(object sender, EventArgs e)
{
if (Page.IsValid) {
Label1.Text = "String";
}
else {
Label1.Text = "Integer";
}
}
答案 0 :(得分:0)
您需要的是RegularExpressionValidator,如下所示。 ValidationExpression =“^ [a-zA-Z] * $ 仅限输入字母。
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="name" ValidationExpression="^[a-zA-Z]*$" ErrorMessage="RegularExpressionValidator" Display="Dynamic"></asp:RegularExpressionValidator>
您可能还想使用 RequiredFieldValidator 检查空输入。
如果这些都不符合您的要求,那么您将需要使用CustomValidator。