C# CustomValidator不调用javascript

C# CustomValidator不调用javascript,c#,javascript,asp.net,C#,Javascript,Asp.net,我正在尝试asp.net的customvalidator控件,但问题是它没有调用javascript函数。但是,它正在调用验证方法的服务器端版本 <asp:CustomValidator EnableClientScript="true" ID="RegularExpressionValidatorFixedNames" runat="server" ControlToValidate="TextBoxChapterName"

我正在尝试asp.net的customvalidator控件,但问题是它没有调用javascript函数。但是,它正在调用验证方法的服务器端版本

          <asp:CustomValidator  EnableClientScript="true"  
                ID="RegularExpressionValidatorFixedNames" runat="server"  ControlToValidate="TextBoxChapterName" 
                Text="Name not allowed" Font-Size="XX-Small"
                ValidationGroup="Name" 
                ClientValidationFunction="LQA_Validate"
                onservervalidate="RegularExpressionValidatorFixedNames_ServerValidate">   </asp:CustomValidator>
服务器端方法

          protected void RegularExpressionValidatorFixedNames_ServerValidate(object source, ServerValidateEventArgs args)
{
    Regex regex = new Regex(@"^(?!My Ls|My Qs|My As).*", RegexOptions.IgnoreCase);
    args.IsValid = regex.IsMatch(args.Value);
}
问题可能是因为正则表达式或我犯了一些技术错误而导致的?

问题是:

 function LQA_Validate(sender, args) {
    var re = /(?! My Ls|My As|My Qs).*/ig;
    args.IsValid = re.test(args);
}
re.test(args)
中,您应该使用
re.test(args.Value)

因此,代码必须是:

 function LQA_Validate(sender, args) {
    var re = /(?! My Ls|My As|My Qs).*/ig;
    args.IsValid = re.test(args.Value);
}
问题是:

 function LQA_Validate(sender, args) {
    var re = /(?! My Ls|My As|My Qs).*/ig;
    args.IsValid = re.test(args);
}
re.test(args)
中,您应该使用
re.test(args.Value)

因此,代码必须是:

 function LQA_Validate(sender, args) {
    var re = /(?! My Ls|My As|My Qs).*/ig;
    args.IsValid = re.test(args.Value);
}

我使用了console.log,但是javascript函数被调用了。它(console)给出了什么错误,比如函数未定义?很抱歉,我在注释中出错了,它被调用了。我认为正则表达式有问题,
args
变量是什么?
.text()
方法需要一个字符串,但如果它是字符串原语,则无法为其分配
.IsValid
属性。我使用了console.log,但调用了javascript函数。它是什么(console)给出任何错误,如函数未定义?很抱歉,我在注释中出错,它被调用了。我认为正则表达式有问题,
args
变量是什么?
.text()
方法需要一个字符串,但如果它是字符串原语,则无法为其分配
.IsValid
属性。