Javascript表单验证器与数学CAPTCHA冲突 [英] Javascript form validator conflict with math CAPTCHA

查看:199
本文介绍了Javascript表单验证器与数学CAPTCHA冲突的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

以下是数学验证码的基本电子邮件表单。验证码正在工作,但表单验证程序没有。当我说表单验证器时,我指的是所需的名称和电子邮件字段。如果我删除验证码,则表单验证器可以正常工作。

 <!DOCTYPE html PUBLIC我认为表单验证程序的js代码和Captcha的js代码是相互冲突的。  -  // W3C // DTD XHTML 1.0 Transitional // ENhttp://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"> 
< html xmlns =http://www.w3.org/1999/xhtml>
< head>
< meta http-equiv =Content-Typecontent =text / html; charset = UTF-8/>
< title> EiP - 与我们联系< / title>

< script type =text / javascript>
//表单验证器用于所需的名称和电子邮件字段
函数MM_validateForm(){//v4.0
if(document.getElementById){
var i,p,q ,纳米,测试,NUM,最小值,最大值,误差= '',ARGS = MM_validateForm.arguments; (i = 0; i<(args.length-2); i + = 3){test = args [i + 2]; VAL =的document.getElementById(参数[I]);
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 +'必须包含一个电子邮件地址。
} else if(test!='R'){num = parseFloat(val);
if(isNaN(val))errors + =' - '+ nm +'必须包含一个数字。
if(test.indexOf('inRange')!= -1){p = test.indexOf(':');
min = test.substring(8,p);最大= test.substring(P + 1);
if(num }}} else if(test.charAt(0)=='R')errors + =' - '+ nm +'is required.\\\
'; }
} if(errors)alert('发生以下错误:\ n'+ errors);
document.MM_returnValue =(errors =='');
}}
< / script>
< / head>
< body>
< p>您是否有关于EiP的问题或评论?我们希望听到您的意见,因为您的反馈对我们的成功至关重要。< / p>
< p class =required> *必填信息< / p>
< p class =allforms>全名< span> *< / span>< / p>
< input name =nametype =textid =name/>
< p class =allformsRt>电子邮件地址< span> *< / span>< / p>
< input type =textname =emailid =email/>
< p class =allforms>公司< / p>
< input name =companytype =textid =company/>
< p class =allformsRt>电话号码< / p>
< input type =textname =phoneid =phone/>
< p class =allforms>我们如何提供帮助?< / p>