0

I want to make is so the recaptcha is a mandatory field and user cannot post until clicked.

Could anyone give me an example that works and shows the user on the same page that he is that he need to click captcha?

$("#myForm").bind('blur keydown focusout', function() {

  var dataArray = $("#myForm").serializeArray(),
    dataObj = {};
  console.dir(dataArray); //require firebug
  //console.log(dataArray);

  $(dataArray).each(function(i, field) {
    dataObj[field.name] = field.value;
  });

  var recaptcha = (dataObj['g-recaptcha-response']);

  if (recaptcha != "") {
    $("#temp").remove();
  }
});

$(".register").click(function() {

var dataArray = $("#myForm").serializeArray(),
  dataObj = {};
console.dir(dataArray); //require firebug
//console.log(dataArray);

$(dataArray).each(function(i, field) {
  dataObj[field.name] = field.value;
});

var recaptcha = (dataObj['g-recaptcha-response']);

$("#temp").remove();

if (recaptcha == "") {
  $("#recaptcha").append('<label id="temp" style="color:red;line-height:normal;font-size: small;">This field is required.</label>');
}

});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<div class="contact_form">
  <div id="note"></div>
  <div id="fields">
    <form action="email_to_us.php" method="post" name="myform" id="myform">
      <input class="span7" type="text" name="ime" value="" placeholder="Ime" required/>
      <input class="span7" type="text" name="email" value="" placeholder="Email" required />
      <input class="span7" type="text" name="zadeva" value="" placeholder="Zadeva" required />
      <textarea name="sporocilo" id="message" class="span8" placeholder="Sporočilo"></textarea><br>
      <div class="g-recaptcha" name="recaptcha" id="recaptcha" data-sitekey="mykey" data-callback="correctCaptcha"></div><br>
      <input type="submit" class="btn send_btn" id="btn-validate" value="Pošlji" />
    </form>
  </div>
</div>

0 Answers0