When you think ASP, think...
Recent Articles
All Articles
ASP.NET Articles
ASPFAQs.com
Message Board
Related Web Technologies
User Tips!
Coding Tips

Sections:
Sample Chapters
Commonly Asked Message Board Questions
JavaScript Tutorials
MSDN Communities Hub
Official Docs
Security
Stump the SQL Guru!
XML Info
Information:
Feedback
Author an Article
ASP ASP.NET ASP FAQs Message Board Feedback
Print this page.
Published: Thursday, February 04, 1999

Dynamic Client-Side Scripting
By Abd Shomad


Cut and paste these code on your asp pages. I prefer to place the code on the *included file* named "jsClientUtils.inc"

- continued -

These snippets code write the Client Side JavaScript Validation for major input type validation using ASP.
e.g.: TextBox, Password, and Email Validation

Code snippets and descriptions:

Sub jsTextValidation(sName, sLabel, iMin, iMax, bRequired)
'----------------------------------------------------------------
' Purpose: Validate Text Box value.
' Inputs :
'    sName  : name of the input
'    sLabel : label to display, if label = "" then use sName instead
'    iMin, iMax: Minimum & Maximum characters allowed respectively
'    bRequired : True/False, is required value?
' Return : Write the Text Box Validation script to the client browser
'----------------------------------------------------------------

Sub jsPasswordValidation(sPassword1, sPassword2, iMin, iMax, bRequired)
'----------------------------------------------------------------
' Purpose: Validate Both Password field, usually used for new registration.
' Inputs :
'    sPassword1 : name of the first password input box
'    sPassword2 : name of the 2nd   password input box
'    iMin, iMax: Minimum & Maximum characters allowed respectively
'    bRequired : True/False, is required value?
'    usually, always TRUE
' Return : Write the Password Validation script to the client browser
'----------------------------------------------------------------

Sub jsEmailValidation(sName, sLabel, iMin, iMax, bRequired)
'----------------------------------------------------------------
' Purpose: Validate e-mail input, usually used for new registration.
' Inputs :
'    sName  : name of the input, usually: "email"
'    sLabel : label to display, if label = "" then use sName instead
'    iMin, iMax: Minimum & Maximum characters allowed respectively
'    bRequired : True/False, is required value?
'    usually, always TRUE
' Return : Write the e-mail Validation script to the client browser
'----------------------------------------------------------------

Here's the working example:

<%
'---------------------------------------------------------------------------
----
' Purpose:  Display a line of text (text & vbCRLF)
'---------------------------------------------------------------------------
----
Sub Display( Text )
  Response.Write(Text&vbCRLF)
End Sub

'---------------------------------------------------------------------------
----
' Purpose:  Write Beginning of script tag for Form Validator Script
'---------------------------------------------------------------------------
----
Sub jsFormValidationBegin
  Display "<script Language=""JavaScript"">"
  Display "<!--"
  Display ""
  Display "function Form_Validator(theForm)"
  Display "{"
  Display ""
End Sub

'----------------------------------------------------------------
' Purpose:  Write End of script tag for Form Validator Script
'----------------------------------------------------------------
Sub jsFormValidationEnd
  Display "  return (true);"
  Display ""
  Display "}"
  Display "//-->"
  Display "</script>"
End Sub

'----------------------------------------------------------------
' Purpose: Validate Text Box value.
' Inputs :
' sName  : name of the input
' sLabel : label to display, if label = "" then use sName instead
' iMin, iMax: Minimum & Maximum characters allowed respectively
'  bRequired : True/False, is required value?
' Return : Write the Text Box Validation script to the client browser
'----------------------------------------------------------------
Sub jsTextValidation(sName, sLabel, iMin, iMax, bRequired)
  Display "  // Validation script for field '"&sName&"' ("&sLabel&")"
  If bRequired Then
    Display "  if (theForm."&sName&".value == """")"
    Display "  {"
    Display "    alert(""Please enter a value for the \"""&sLabel&"\"" field."");"
    Display "    theForm."&sName&".focus();"
    Display "    return (false);"
    Display "  }"
    Display ""
  Else
    Display "  if (theForm."&sName&".value != """")"
    Display "  {"
    Display "  // if user type the value then Check the value"
  End If

  Display "  if (theForm."&sName&".value.length < "&iMin&")"
  Display "  {"
  Display "    alert(""Please enter at least "&iMin&" characters in the \"""&sLabel&"\"" field."");"
  Display "    theForm."&sName&".focus();"
  Display "    return (false);"
  Display "  }"
  Display ""
  Display "  if (theForm."&sName&".value.length > "&iMax&")"
  Display "  {"
  Display "    alert(""Please enter at most "&iMax&" characters in the \"""&sLabel&"\"" field."");"
  Display "    theForm."&sName&".focus();"
  Display "    return (false);"
  Display "  }"
  Display ""

  If not bRequired Then
    Display "  // End checking value"
    Display "  }"
    Display ""
  End If
End Sub

'----------------------------------------------------------------
' Purpose: Validate Both Password field, usually used for new registration.
' Inputs :
' sPassword1 : name of the first password input box
' sPassword2 : name of the 2nd   password input box
' iMin, iMax: Minimum & Maximum characters allowed respectively
'  bRequired : True/False, is required value?
'  usually, always TRUE
' Return : Write the Password Validation script to the client browser
'----------------------------------------------------------------
Sub jsPasswordValidation(sPassword1, sPassword2, iMin, iMax, bRequired)
  Display "  // Passsword field validation"

  jsTextValidation sPassword1, "Password", iMin, iMax, bRequired
  jsTextValidation sPassword2, "Verify Password", iMin, iMax, bRequired

  Display "  if (theForm."&sPassword1&".value != theForm."&sPassword2&".value)"
  Display "  {"
  Display "    alert(""Both \""Password\"" field must has the same value."");"
  Display "    theForm."&sPassword2&".value = """";"
  Display "    theForm."&sPassword2&".focus();"
  Display "    return (false);"
  Display "  }"
  Display ""
End Sub

'----------------------------------------------------------------
' Purpose: Validate e-mail input, usually used for new registration.
' Inputs :
' sName  : name of the input, usually: "email"
' sLabel : label to display, if label = "" then use sName instead
' iMin, iMax: Minimum & Maximum characters allowed respectively
'  bRequired : True/False, is required value?
'  usually, always TRUE
' Return : Write the e-mail Validation script to the client browser
'----------------------------------------------------------------
Sub jsEmailValidation(sName, sLabel, iMin, iMax, bRequired)
  Display "  // Email field validation"
  jsTextValidation sName, sLabel, iMin, iMax, bRequired
  
  If Not bRequired Then
    Display "  if (theForm."&sName&".value != """")"
    Display "  {"
    Display "  // if user type the value then Check the value"
  End If

  Display "  if (theForm."&sName&".value.indexOf(""@"",1) == -1)"
  Display "  {"
  Display "    alert(""Not a valid e-mail address."");"
  Display "    theForm."&sName&".focus();"
  Display "    return (false);"
  Display "  }"
  Display ""
  Display "  if (theForm."&sName&".value.indexOf(""."",theForm."&sName&".value.indexOf(""@"")+1) == -1)"
  Display "  {"
  Display "    alert(""Not a valid e-mail address."");"
  Display "    theForm."&sName&".focus();"
  Display "    return (false);"
  Display "  }"
  Display ""

  If not bRequired Then
    Display "  // End checking e-mail value"
    Display "  }"
    Display ""
  End If
End Sub
%>

Just copy and paste all the text to your asp pages.

<HTML>
<HEAD>
<%
jsFormValidationBegin
jsTextValidation "name", "Full Name", 3, 50, True
jsPasswordValidation "passw1", "passw2", 3, 20, True
jsEmailValidation "email", "E-mail", 3, 50, False
jsFormValidationEnd
%>
</HEAD>

<BODY>
<FORM ACTION="-- self --" METHOD="POST" onsubmit="return
Form_Validator(this)"
name="formRegistration">

Full Name: 
<INPUT TYPE="TEXT" NAME="name" SIZE=20 MAXLENGTH=50>
<SUP> *)
</SUP><BR>

Password : 
<INPUT TYPE="PASSWORD" NAME="passw1" SIZE=20 MAXLENGTH=20>
<SUP>
*) </SUP><BR>

Retype Password: 
<INPUT TYPE="PASSWORD" NAME="passw2" SIZE=20 MAXLENGTH=20>
<SUP> *) </SUP><BR>

Email : 
<INPUT TYPE="TEXT" NAME="email" SIZE=20 MAXLENGTH=50>
<BR>
<INPUT TYPE="SUBMIT" NAME="s" VALUE="  Submit  ">
<BR>
Note: *) is required field.
</FORM>

</BODY>
</HTML>


ASP.NET [1.x] [2.0] | ASPMessageboard.com | ASPFAQs.com | Advertise | Feedback | Author an Article