我有一个查询表格,我已经在其中添加了recaptcha 2.0。现在,我需要在表单的验证文件中添加验证码。问题是我不知道验证码应该是什么样子以及我应该把它放在我的验证文件中。
这是一个完整的验证文件代码:
$(document).ready(function(){
//global vars
var enquiryfrm = $("#agt_mail_agent");
var yourname = $("#agt_mail_name");
var yournameInfo = $("#span_agt_mail_name");
var youremail = $("#agt_mail_email");
var youremailInfo = $("#span_agt_mail_email");
var frnd_comments = $("#agt_mail_msg");
var frnd_commentsInfo = $("#span_agt_mail_msg");
//On blur
yourname.blur(validate_yourname);
youremail.blur(validate_youremail);
frnd_comments.blur(validate_frnd_comments_author);
//On key press
yourname.keyup(validate_yourname);
youremail.keyup(validate_youremail);
frnd_comments.keyup(validate_frnd_comments_author);
//On Submitting
enquiryfrm.submit(function(){
if(validate_yourname() & validate_youremail() & validate_frnd_comments_author())
{
//hideform();
return true
}
else
{
return false;
}
});
//validation functions
function validate_yourname()
{
if($("#agt_mail_name").val() == '')
{
yourname.addClass("error");
yournameInfo.text("Please Enter Your Name");
yournameInfo.addClass("message_error2");
return false;
}
else{
yourname.removeClass("error");
yournameInfo.text("");
yournameInfo.removeClass("message_error2");
return true;
}
}
function validate_youremail()
{
var isvalidemailflag = 0;
if($("#agt_mail_email").val() == '')
{
isvalidemailflag = 1;
}else
if($("#agt_mail_email").val() != '')
{
var a = $("#agt_mail_email").val();
var filter = /^[a-zA-Z0-9]+[a-zA-Z0-9_.-]+[a-zA-Z0-9_-]+@[a-zA-Z0-9]+[a-zA-Z0-9.-]+[a-zA-Z0-9]+.[a-z]{2,4}$/;
//if it's valid email
if(filter.test(a)){
isvalidemailflag = 0;
}else{
isvalidemailflag = 1;
}
}
if(isvalidemailflag)
{
youremail.addClass("error");
youremailInfo.text("Please Enter valid Email Address");
youremailInfo.addClass("message_error2");
return false;
}else
{
youremail.removeClass("error");
youremailInfo.text("");
youremailInfo.removeClass("message_error");
return true;
}
}
function validate_frnd_comments_author()
{
if($("#agt_mail_msg").val() == '')
{
frnd_comments.addClass("error");
frnd_commentsInfo.text("Please Enter Comments");
frnd_commentsInfo.addClass("message_error2");
return false;
}else{
frnd_comments.removeClass("error");
frnd_commentsInfo.text("");
frnd_commentsInfo.removeClass("message_error2");
return true;
}
}
function reset_email_agent_form()
{
document.getElementById('agt_mail_name').value = '';
document.getElementById('agt_mail_email').value = '';
document.getElementById('agt_mail_phone').value = '';
document.getElementById('agt_mail_msg').value = '';
}
});
答案 0 :(得分:0)
您需要做的是阻止表单提交,直到您可以使用Google reCaptcha验证回调验证用户响应,然后,如果通过,则允许表单提交。请参阅此答案:Google ReCAPTCHA how to make required?并查看文档:{{3}}
答案 1 :(得分:0)
问题是我的表单是从.js文件验证的(如果所有必填字段都填写正确)。我知道我无法验证来自.js文件的recaptcha。如何从.js文件中验证我的表单字段并从另一个文件中重新获取?我应该怎么做?那个.js文件在我的第一篇文章中(代码)。