2016-03-29 6 views
2

Server-Seite in Ordnung, Arbeit richtig, aber Clientseite Validierung nicht wie unten Code arbeiten:Google reCaptcha Validierung nicht auf Client-Seite

<script src='https://www.google.com/recaptcha/api.js'></script> 
    <div class="g-recaptcha" data-sitekey="xxxxx"></div> 
    <div id="html_element"></div> 

JS

<script> 
     var googleResponse = jQuery('#g-recaptcha-response').val(); 
     if (!googleResponse) { 
      $('<p style="color:red !important" class=error-captcha"><span class="glyphicon glyphicon-remove " ></span> Please fill up the captcha.</p>" ').insertAfter("#html_element"); 
      return false; 
     } else { 

      return true; 
     } 
    </script> 

Wo ist mein Problem?

Antwort

1

Sie sollten Code unten folgen:

<div id="html_element" style="display: none;color:red !important"> 
    <span class="glyphicon glyphicon-remove " ></span> 
     Please fill up the captcha. 
</div> 

$('#form').on('submit', function (e) { 
    var response = grecaptcha.getResponse(); 
    //recaptcha failed validation 
      if(response.length == 0) { 
       e.preventDefault(); 
       $('#html_element').show(); 
      } 
      //recaptcha passed validation 
      else { 
       $('#html_element').hide(); 
      } 
      if (e.isDefaultPrevented()) { 
       return false; 
      } else { 
       return true; 
      } 
     });