我无法让Recaptcha小部件出现在IE 8中,尽管它在Firefox,Safari和Chrome中按预期工作。
我创建了一个反馈表单,当用户单击链接时通过AJAX加载,我直接调用Ajax API来放置recaptcha容器(div在/ feedback-form / modal页面中加载) :
$(".feedback-link", context)
.after('<div id="feedback-modal"></div>')
.click(function () {
$("#feedback-modal").load("/feedback-form/modal",function() {
$("#feedback-container").slideToggle('fast');
Recaptcha.create(recaptcha_key,"recaptcha_ajax_api_container", { theme: "white", callback: Recaptcha.focus_response_field } );
}
});
验证和提交也是通过AJAX完成的,并且在除IE 8之外的所有内容中都能正常工作。在IE中,表单根本不会加载,大概是因为抛出了Javascript错误:
“Recaptcha.widget is null or not an object at line 15”
有关如何进行的任何建议或调试此方法的不同方法?
答案 0 :(得分:0)
FWIW因为recaptcha是通过flash加载的,所以它与ajax不兼容。我理解一些组件制造商,如专注于jjf jjf的primefaces甚至不打扰ajax为他们的recaptcha组件。