如何在Ajax弹出中实现Google ReCaptcha

时间:2013-03-29 09:05:49

标签: asp.net-mvc asp.net-mvc-3 jquery recaptcha mvcrecaptcha

我在MVC3.0工作,我想在弹出窗口中实现Captcha(Google服务)。现在的问题是弹出是由ajax调用。

在AJAX调用中,弹出的Re验证码不会出现,但在正常弹出窗口中它正确显示。

我按照以下步骤操作:

第1步:我将其包含在Email.cshtml中

@Html.Raw(Html.GenerateCaptcha())

步骤2:在我的.cs文件中生成此功能:

public static string GenerateCaptcha(this HtmlHelper helper)
{
    var captchaControl = new RecaptchaControl
    {
        ID = "recaptcha",
        Theme = "clean", //http://wiki.recaptcha.net/index.php/Theme
        PublicKey = ConfigurationManager.AppSettings["ReCaptchaPublicKey"],
        PrivateKey = ConfigurationManager.AppSettings["ReCaptchaPrivateKey"]
    };
    var htmlWriter = new HtmlTextWriter(new StringWriter());
    captchaControl.RenderControl(htmlWriter);
    return htmlWriter.InnerWriter.ToString();
}

步骤3:然后在web.config中添加公钥和私钥,并添加必要的命名空间

我遵循了所有步骤。

有人可以建议是否通过Ajax调用弹出,如果我必须在Ajax弹出中实现验证码,那么我该怎么办?

此致 萨赫勒

0 个答案:

没有答案