Это было давно, но я думаю, что вам нужно включить сценарии проверки на стороне клиента, добавив:
EnableClientScript="True"
Пример
<asp:CompareValidator ID="CompareValidator1" EnableClientScript="True" runat="server"
Operator="GreaterThanEqual"
ControlToValidate="TextBox2" ControlToCompare="TextBox1"
ErrorMessage='Invalid Date'
ForeColor="Red"></asp:CompareValidator>
Это задокументировано в msdn .
Кроме того, я знаю, что в пользовательских валидаторах часто отсутствует правильная реализация javascript. Я не уверен, как CompareValidator
ведет себя в этом смысле.
Возможно, вам потребуется создать унаследованный класс для полной реализации сценариев. Прежде чем идти туда, попробуйте немного изучить.
Например, вот решение с пользовательским валидатором