Solved

customvalidator question

Posted on 2004-09-24
14
823 Views
Last Modified: 2008-02-07
please help me
i want to pass parameters in customvalidator function

this is my code

<asp:CustomValidator id="Title" runat="server" EnableClientScript="False" ErrorMessage="Error in title"
 OnServerValidate="checkValid"></asp:CustomValidator>
                                                                        


Sub checkValid(ByVal s As Object, ByVal e As ServerValidateEventArgs)

end sub

this works fine but

 i like to pass somthing like this

 OnServerValidate="checkValid('title')"

0
Comment
Question by:DOT_NET
  • 7
  • 3
  • 2
  • +1
14 Comments
 
LVL 9

Expert Comment

by:hismightiness
ID: 12146949
What variable are you trying to pass into it?  Where is it coming from?
0
 

Author Comment

by:DOT_NET
ID: 12147027
Actually i like to pass the ID of textbox as parameter

as the customvalidator functions uses same function most of the textbox

0
 
LVL 9

Expert Comment

by:hismightiness
ID: 12147275
Sorry, another question, are you trying to re-use the server validation function?
0
 

Author Comment

by:DOT_NET
ID: 12147305
yes i like to use same function for diff customvalidator controls
0
 
LVL 28

Expert Comment

by:mmarinov
ID: 12147329
Hi hismightiness,

CType(source, CustomValidator).ControlToValidate will return ( in string ) the id of the control you want to validate
if you want to search for this control , just type

Page.FindControl (  CType(source, CustomValidator).ControlToValidate )

B..M
0
 

Author Comment

by:DOT_NET
ID: 12147404
My quesyion is what parameters to be passed for the function checkValid


Sub checkValid(ByVal s As Object, ByVal e As ServerValidateEventArgs)

end sub

Default checkValid() function  passes the parameters for  Object and ServerValidateEventArgs



if i add new new parameter like

Sub checkValid(ByVal s As Object, ByVal e As ServerValidateEventArgs,Byval controlID as string)

end sub

then

OnServerValidate="checkValid('title')" doest work

0
 

Author Comment

by:DOT_NET
ID: 12147468
@mmarinov ur comment might help but
apart from control ID to validate i have to pass the maximum length for that textbox as parameter.
 which can't be retrieved in function without passing as parameter

0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 
LVL 28

Expert Comment

by:mmarinov
ID: 12147478
DOT_NET,

sorry, but i did not read your question carefully
you can not set a parameter in the way you want, BUT
as i understand your question correclty - you want to use one custom validator to validate more than one controls - correct ?
if yes you have to use

customValidator1.ControlToValidate = "textbox1" and the textbox1 should be put in some conditions
the same conditions that will determine which id you want to pass like in the way you wanted
B..M
0
 

Author Comment

by:DOT_NET
ID: 12147494
i guess i can find out the way
0
 
LVL 28

Accepted Solution

by:
mmarinov earned 50 total points
ID: 12147503
DOT_NET,

if you want to pass more that on values why you can use sessions
then you don't have to set a specific control to validate

or even better in the button_onclick ( for example ) you can perform your validation manually :)

B..M
0
 

Author Comment

by:DOT_NET
ID: 12147513
performing validation manually is last option i guess
0
 

Author Comment

by:DOT_NET
ID: 12147521
thanks mmarinov i will post my commnet after tring it out
0
 
LVL 8

Expert Comment

by:boulder_bum
ID: 12147799
If you want to use the same server-side function, you'd simply assign the same ServerValidateEventHandler. You DO NOT need a custom implementation for this:

   C#
this.CustomValidator1.ServerValidate += new System.Web.UI.WebControls.ServerValidateEventHandler(this.checkValid);
this.CustomValidator2.ServerValidate += new System.Web.UI.WebControls.ServerValidateEventHandler(this.checkValid);

   VB.NET
AddHandler CustomValidator1.ServerValidate, checkValid
AddHandler CustomValidator2.ServerValidate, checkValid

0
 
LVL 8

Expert Comment

by:boulder_bum
ID: 12147819
PS- You'll want to assign the server-side event handlers in the OnInit event handler of the page.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Lots of people ask this question on how to extend the “MembershipProvider” to make use of custom authentication like using existing database or make use of some other way of authentication. Many blogs show you how to extend the membership provider c…
Today is the age of broadband.  More and more people are going this route determined to experience the web and it’s multitude of services as quickly and painlessly as possible. Coupled with the move to broadband, people are experiencing the web via …
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …
Both in life and business – not all partnerships are created equal. As the demand for cloud services increases, so do the number of self-proclaimed cloud partners. Asking the right questions up front in the partnership, will enable both parties …

911 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now