CustomValidator doesn't give error message

  • Thread starter Thread starter COHENMARVIN
  • Start date Start date
C

COHENMARVIN

I have a customValidator that calls a client function.
Here is the client function
<script language="JavaScript">
function ClientValidate(objSource, objArgs)
{
var intnumber = objArgs.Value;
if (intnumber > 5)
{
objArgs.IsValid = False;
return False;
}
Else
{
objArgs.IsValid = True;
return True;
}
}
</script>

Here is the CustomValidator:

<ASP:CustomValidator id="valCustom" runat="server"
ControlToValidate = "MyTextBox"
ClientValidationFunction="ClientValidate"
ErrorMessage="* Value must be less than or equal to 5 "
Display="Dynamic">
*
</asp:CustomValidator>

The problem is that the custom validator puts a red asterix next to the
textbox field even when the number entered into the textbox is valid.
It treats all numbers as wrong. Another problem involves the
ValidationSummary control (see below)

<ASP:ValidationSummary id="valSummary" runat="server"
ShowSummary="True"
ShowMessageBox = "True" DisplayMode="List" HeaderText = "<b>The
following errors were found</b>" />

This should give an error message when the value in "MyTextBox" is
wrong, but it doesn't.
-- CohenMarvin
 
Hi Marvin,

I read your other thread first. I believe your best answer is to use the
CompareValidator, Type=Integer, ValueToCompare=5, Operator=GreaterThan.

But to offer some insight on this problem, here are my thoughts:
1. objArgs.Value contains a string. Let's convert it to an integer first:
var intnumber = parseInt(objArgs.Value);

2. Don't return true or false. The result is always set in objArgs.IsValid
(which you've done). So just remove those return statements.

--- Peter Blum
www.PeterBlum.com
Email: (e-mail address removed)
Creator of "Professional Validation And More" at
http://www.peterblum.com/vam/home.aspx
 
Back
Top