2015-02-27 11 views

Odpowiedz

93

po prostu należy podać parametr "? hl =" w adresie URL skryptu:

<script src='https://www.google.com/recaptcha/api.js?hl=fr'></script> 

Niezbyt dobrze udokumentowana!

znaleźć swój kod języka tutaj: https://developers.google.com/recaptcha/docs/language

+0

Potrzebujemy więcej odpowiedzi w ten sposób! dzięki ! – Combine

+0

Świetne ... Lubię i dziękuję –

+0

[Wydaje się, że jest to lista dostępnych kodów językowych] (https://developers.google.com/recaptcha/docs/language). –

14

Jeśli używasz gem Odśwież trzeba dostarczyć hl param w recaptcha_tags.

Przykład:

<%= recaptcha_tags ssl: true, hl: 'it', display: { theme: 'white' } %> 
+2

Dzięki! Żadne dobrze udokumentowane na klejnocie – Jorge

3

Tak, "hl = kod języka" podejście działa dobrze. Połów, oczywiście, ma to zrobić na KAŻDYM wystąpieniu <script src='https://www.google.com/recaptcha/api.js'></script> na stronie - zarówno w nagłówku strony, jak i w treści strony. Tylko umieszczenie hl = ... w ciele prowadzi do niekonsekwentnych wyników.

1

Proste rozwiązanie

Można to zrobić tak:

HTML

<div id="captcha_container"></div> 
<select id="ddllanguageListsGoogleCaptcha"></select> 

JS

// Update language captcha 
function updateGoogleCaptchaLanguage(selectedLanguage) { 

    // Get GoogleCaptcha iframe 
    var iframeGoogleCaptcha = $('#captcha_container').find('iframe'); 

    // Get language code from iframe 
    var language = iframeGoogleCaptcha.attr("src").match(/hl=(.*?)&/).pop(); 

    // Get selected language code from drop down 
    var selectedLanguage = $('#ddllanguageListsGoogleCaptcha').val(); 

    // Check if language code of element is not equal by selected language, we need to set new language code 
    if (language !== selectedLanguage) { 
     // For setting new language 
     iframeGoogleCaptcha.attr("src", iframeGoogleCaptcha.attr("src").replace(/hl=(.*?)&/, 'hl=' + selectedLanguage + '&')); 
    } 
} 

Online demo (jsFiddle)