ASP.NET Custom Validator Validação do lado do cliente e do lado do servidor não acionada

Isso nunca aconteceu comigo antes, mas, por algum motivo, os eventos de validação do cliente e do servidor não estão sendo acionados:

<asp:TextBox ID="TextBoxDTownCity" runat="server" CssClass="contactfield" />
<asp:CustomValidator ID="CustomValidator2" runat="server" EnableClientScript="true"
    ErrorMessage="Delivery Town or City required"
    ClientValidationFunction="TextBoxDTownCityClient" 
    ControlToValidate="TextBoxDTownCity"
    OnServerValidate="TextBoxDTownCity_Validate" Display="Dynamic" >
</asp:CustomValidator>

Evento de validação do lado do servidor:

protected void TextBoxDTownCity_Validate(object source, ServerValidateEventArgs args)
{
    args.IsValid = false;
}

Evento de validação do lado do cliente:

function TextBoxDCountyClient(sender, args) {
    args.IsValid = false;
    alert("test");
}

Pensei que pelo menos a validação do lado do servidor seria acionada, mas não. isso nunca aconteceu comigo antes. Isso realmente me deixou perplex

Eu olhei a saída e o ASP.NET está reconhecendo a função do lado do cliente:

Saída JavaScript do ASP.NET:

var ctl00_ctl00_content_content_CustomValidator2 = document.all ? document.all["ctl00_ctl00_content_content_CustomValidator2"] : document.getElementById("ctl00_ctl00_content_content_CustomValidator2");

ctl00_ctl00_content_content_CustomValidator2.controltovalidate = "ctl00_ctl00_content_content_TextBoxDTownCity";

ctl00_ctl00_content_content_CustomValidator2.errormessage = "Delivery Town or City required";

ctl00_ctl00_content_content_CustomValidator2.display = "Dynamic";

ctl00_ctl00_content_content_CustomValidator2.evaluationfunction = "CustomValidatorEvaluateIsValid";

ctl00_ctl00_content_content_CustomValidator2.clientvalidationfunction = "TextBoxDTownCityClient";

alidador personalizado renderizado:

<span id="ctl00_ctl00_content_content_CustomValidator2" style="color:Red;display:none;">Delivery Town or City required</span> 

lguém pode esclarecer por que a validação do cliente e do servidor não seria acionad

Edit: Typo eu colei na função errada, problema ainda o mesmo

Apenas outra atualização para o último comentário: onde pelo TextBox não pode estar vazio. Eu testei isso e não é verdade. Em uma página em branco, o CustomValidator acionou minha função de validação do lado do cliente sem um valor:

<asp:TextBox ID="TextBox1" runat="server" />
<asp:CustomValidator ID="CustomValidator1" runat="server" 
ErrorMessage="CustomValidator" ClientValidationFunction="TextBoxDAddress1Client"></asp:CustomValidator>
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />

questionAnswers(7)

yourAnswerToTheQuestion