Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Javascript验证同一表单中的两个不同输入字段_Javascript_Forms_Reactjs_Function_Validation - Fatal编程技术网

使用Javascript验证同一表单中的两个不同输入字段

使用Javascript验证同一表单中的两个不同输入字段,javascript,forms,reactjs,function,validation,Javascript,Forms,Reactjs,Function,Validation,我有一个表单,其中我验证两个不同的字段,一个是税号输入字段,另一个是保险号字段。 我已经编写了两个相应的函数来验证这些字段。如何为这两个函数编写包装器函数 税域验证功能 validationofTaxIDField(e, formDataArray){ console.log("WorkflowDisplay: validateTaxIDField: e", e, formDataArray); let alertError = false

我有一个表单,其中我验证两个不同的字段,一个是税号输入字段,另一个是保险号字段。 我已经编写了两个相应的函数来验证这些字段。如何为这两个函数编写包装器函数

税域验证功能

    validationofTaxIDField(e, formDataArray){
            console.log("WorkflowDisplay: validateTaxIDField: e", e, formDataArray);
            let alertError = false;
            if(formDataArray && formDataArray[0] && formDataArray[0]["1"] && formDataArray[0]["1"].taxInformation){
                const ti = formDataArray[0]["1"].taxInformation;
                console.log("ti", ti);
                if(ti.taxId){
                    if( !validateTIN(ti.taxId) ){ //taxID number
              alertError = true;
            }
                }
            }
            if(alertError){
          alert(customErrorMessages.invalidTaxId);
        }
        }

**Function for Insurance field Validation**
validationofSocialInsuranceField(e, formDataArray){
        console.log("WorkflowDisplay:validateSocialInsuranceField: e" , e, formDataArray);
        let alertError = false;
        if(formDataArray && formDataArray[0] && formDataArray[0]["2"] && formDataArray[0]["2"].insuranceDetails){
            const iid = formDataArray[0]["2"].insuranceDetails;
            console.log("WorkflowDisplay:validateSocialInsuranceField:iid", iid);
            if(iid.insuranceId){
                if( !validateSINo(iid.insuranceId) ){ //taxID number
          alertError = true;
        }
            }
        }
        if(alertError){
      alert(customErrorMessages.invalidInsuranceId);
    }
    }

现在,当我尝试验证时,即使我只尝试验证保险领域,它总是向我发出税务领域的警报。有人能帮我用javascript为他们两个编写一个包装器函数吗。在这里,我可以从这两个站点收集错误消息。如果您需要更多的澄清,请发表评论。现在我只需要将它们包装在一个函数中,如果它们存在,该函数将返回相应的错误消息。

就像您编写的两个函数
validateIn和validateSINo
一样,这两个函数都返回布尔值
同样,使当前函数,即
validationofTaxIDField
validationofSocialInsuranceField
返回布尔值,通过时为true,失败时为false。

使用这两个后面的函数,因为它们返回布尔值,您可以和它们一起使用,并获得所需的验证

validationofTaxIDField(e,formDataArray){
log(“WorkflowDisplay:validateTaxIDField:e”,e,formDataArray);
设alertError=false;
if(formDataArray&&formDataArray[0]&&formDataArray[0][“1”]&&formDataArray[0][“1”]。taxInformation){
const ti=formDataArray[0][“1”]。taxInformation;
控制台日志(“ti”,ti);
if(ti.taxId&!validateTIN(ti.taxId)){
alertError=true;
}
}
返回警报错误;
}
validationofSocialInsuranceField(e,formDataArray){
log(“工作流显示:validateSocialInsuranceField:e”,e,formDataArray);
设alertError=false;
if(formDataArray&&formDataArray[0]&&formDataArray[0][“2”]&&formDataArray[0][“2”]。保险详情){
const iid=formDataArray[0][“2”]。保险详情;
日志(“工作流显示:validateSocialInsuranceField:iid”,iid);
if(iid.insuranceId&!ValidateNo(iid.insuranceId)){
alertError=true;
}
}
返回警报错误;
}
包装器(e,formDataArray){
if(this.validationofTaxIDField(e,formDataArray)和&this.validateSocialInsuranceField(e,formDataArray)){
//做一些向前的事情
}否则{
//在屏幕上显示验证错误
}

}
第二个函数是否缺少
字段。
?第一个问题是,你应该在这里阅读,不要编写无用的代码。我的问题可以简单得多,比如,如何使用javascript将两个不同的函数包装成一个函数,并通过返回true或false来执行它们。我对javascript非常陌生。你能帮我写一段代码吗。我们将为包装器函数传递哪些参数。谢谢。添加了代码片段,如果您能够获得它或有其他查询,请告诉我