C# 如何使用CompareValidator检查文本是否不包含任何数字
我尝试验证姓名和姓氏。我需要检查用户的输入是否没有数字字符,但当我运行代码时,不会出现错误消息。这是我的密码:C# 如何使用CompareValidator检查文本是否不包含任何数字,c#,asp.net,validation,comparevalidator,C#,Asp.net,Validation,Comparevalidator,我尝试验证姓名和姓氏。我需要检查用户的输入是否没有数字字符,但当我运行代码时,不会出现错误消息。这是我的密码: <asp:CompareValidator ID="CompareValidator2" runat="server" ControlToValidate="TextBox3" ErrorMessage="ชื่อต้องเป็นตัวอักษรเท่านั้น" ForeColor="R
<asp:CompareValidator ID="CompareValidator2" runat="server"
ControlToValidate="TextBox3" ErrorMessage="ชื่อต้องเป็นตัวอักษรเท่านั้น"
ForeColor="Red" Operator="DataTypeCheck" Type="String" ValidationGroup="Group1">*</asp:CompareValidator>
<asp:CompareValidator ID="CompareValidator3" runat="server"
ControlToValidate="TextBox6" ErrorMessage="นามสกุลต้องเป็นตัวอักษรเท่านั้น"
ForeColor="Red" Operator="DataTypeCheck" Type="String" ValidationGroup="Group1">*</asp:CompareValidator>
*
*
非常感谢您的帮助。除了CompareValidator之外,请尝试使用RegexExpressionValidator
<asp:RegularExpressionValidator ID="ValidName" runat="server" ControlToValidate="Name" Display="Dynamic" ValidationGroup="Group1" ValidationExpression="^[^0-9]+$">syntax error...</asp:RegularExpressionValidator>
语法错误。。。
您可以使用CustomValidator
,如下所示:
<asp:CustomValidator ID="NoneNumeric" runat="server" ControlToValidate="txtNoneNumeric" ClientValidationFunction="IsNoneNumeric">Enter Only None Numeric Values !</asp:CustomValidator>
<script type="text/javascript">
function IsNoneNumeric(sender, arguments) {
var NoneNumeric = true;
for (count = arguments.Value.length; count > 0; count--) {
TempChar = arguments.Value.substring(count, count + 1);
if (numString.indexOf(TempChar, 0) != -1) {
NoneNumeric = false;
}
if (NoneNumeric == true) {
arguments.IsValid = true;
}
else {
arguments.IsValid = false;
}
}
}
</script>
仅输入无数值!
并编写如下javascript函数:
<asp:CustomValidator ID="NoneNumeric" runat="server" ControlToValidate="txtNoneNumeric" ClientValidationFunction="IsNoneNumeric">Enter Only None Numeric Values !</asp:CustomValidator>
<script type="text/javascript">
function IsNoneNumeric(sender, arguments) {
var NoneNumeric = true;
for (count = arguments.Value.length; count > 0; count--) {
TempChar = arguments.Value.substring(count, count + 1);
if (numString.indexOf(TempChar, 0) != -1) {
NoneNumeric = false;
}
if (NoneNumeric == true) {
arguments.IsValid = true;
}
else {
arguments.IsValid = false;
}
}
}
</script>
函数为非数值(发送方、参数){
var非数值=真;
对于(count=arguments.Value.length;count>0;count--){
TempChar=arguments.Value.substring(count,count+1);
if(numString.indexOf(TempChar,0)!=-1){
非数字=假;
}
如果(非数字==true){
arguments.IsValid=true;
}
否则{
arguments.IsValid=false;
}
}
}
验证正确,但只有在全部为英语时才是通过。我不会键入泰语。我想你不明白我的意思:我是说我编辑了我的代码!我应该把这个script.inthehtml标记放在哪里