答案 0 :(得分:4)
我遇到了同样的问题,无法使用webkit浏览器中的recaptcha_tags。
最后我按照官方指南编写了(在HAML中)....
:
= javascript_include_tag "http://api.recaptcha.net/js/recaptcha_ajax.js"
在已渲染的部分中 通过ajax:
#dynamic_recaptcha
:javascript
Recaptcha.create('YOURPLUBLICKEY', document.getElementById('dynamic_recaptcha') , '')
答案 1 :(得分:1)
如果有人遇到这个问题,ajax:true为我做了伎俩。我使用rails 3.2.13和recaptcha 0.3.5
=recaptcha_tags(display: {theme: 'clean'}, ajax: true)
答案 2 :(得分:0)
我通过以下方法解决它:
将运行时不会被ajax加载的脚本放在head:
中<script type="text/javascript" src="http://api.recaptcha.net/js/recaptcha_ajax.js"></script>
可选择主题:
<script type="text/javascript">var RecaptchaOptions = {"theme":"clean"};</script>
然后在 true 处使用 evalScripts 选项调用Ajax.Updater:
new Ajax.Updater('example_div', '/example', { parameters: {text: $F('example_text')}, evalScripts: 'true'});
答案 3 :(得分:0)
recaptcha_tags(ajax:true)
$.ajax({
url: "/users/sign_in",
type: "POST",
data: {
email_id: user_email_id,
password: pwd,
type: login_type,
browser_det: browser_details,
login_type: "firebase",
"g-recaptcha-response": grecaptcha.getResponse()
}