Exit
  • Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
  • 한국 커뮤니티
0

Add new functions to Validation Form DW8

New Here ,
Oct 30, 2007 Oct 30, 2007
Using DW8, I've got a simple form with 4 text fields on it - Meter, Date, Count, VerifyCount - and a Submit button. I've added Form Validation to the fields to make them all required and the Count and VerifyCount required to be a number. What I want to do is modify the JS that DW8 added (function MM_validateForm) to make it 1. Validate that the Date field is actually a date and 2. Compare Count and VerifyCount fields match. If not, then provide an error message like any other validate error in the script.
The javascript code is attached that is created by DW8 for Form Validate - looks standard for number of fields... so really looking to add two new validation types.
--Thanks--
TOPICS
Server side applications
238
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Oct 30, 2007 Oct 30, 2007
LATEST
LTL69 wrote:

> Using DW8, I've got a simple form with 4 text fields on it - Meter, Date,
> Count, VerifyCount - and a Submit button. I've added Form Validation to the
> fields to make them all required and the Count and VerifyCount required to be a
> number. What I want to do is modify the JS that DW8 added (function
> MM_validateForm) to make it 1. Validate that the Date field is actually a date

What do you consider to be a date? Would you put some restraints on it?

e.g.:

isADateObject(formEntry) && isAfter(dateInPast) && isBefore(dateInFuture)


> and 2. Compare Count and VerifyCount fields match. If not, then provide an
> error message like any other validate error in the script.
> The javascript code is attached that is created by DW8 for Form Validate -
> looks standard for number of fields... so really looking to add two new
> validation types.
> --Thanks--

Create your own functions : isADate() and fieldsAreSame()

Then add to form tag:
<form
onsubmit=
"return document.MM_returnValue &&
isADate(this.dateField) &&
fieldsAreSame(this.field1,this.field2)">

You could modify the DW function, too. I could help you if you let me
know your specs for date.
Mick

>
>
> <script language="JavaScript" type="text/javascript">
> <!--
> function MM_findObj(n, d) { //v4.01
> var p,i,x; if(!d) d=document;
> if((p=n.indexOf("?"))>0&&parent.frames.length) {
> d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
> if(!(x=d)&&d.all) x=d.all; for (i=0;!x&&i<d.forms.length;i++)
> x=d.forms ;
> for(i=0;!x&&d.layers&&i<d.layers.length;i++)
> x=MM_findObj(n,d.layers
.document);
> if(!x && d.getElementById) x=d.getElementById(n); return x;
> }
>
> function MM_validateForm() { //v4.0
> var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
> for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args );
> if (val) { nm=val.name; if ((val=val.value)!="") {
> if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
> if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail
> address.\n';
> } else if (test!='R') { num = parseFloat(val);
> if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
> if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
> min=test.substring(8,p); max=test.substring(p+1);
> if (num<min || max<num) errors+='- '+nm+' must contain a number
> between '+min+' and '+max+'.\n';
> } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n';
> }
> } if (errors) alert('The following error(s) occurred:\n'+errors);
> document.MM_returnValue = (errors == '');
> }
> //-->
> </script>
>
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines