代码之家  ›  专栏  ›  技术社区  ›  Jon

ASP.NET MVC Recaptcha和Strict Doctype

  •  1
  • Jon  · 技术社区  · 15 年前

    我在用这个 this 在我的MVC项目中回顾一下TCHA方法,但是它不能验证为严格的1.0 doctype。

    有人能帮忙吗?

    谢谢

    2 回复  |  直到 15 年前
        1
  •  0
  •   Fabian Vilers    15 年前

    protected override void RenderContents(HtmlTextWriter output)
    {
     output.AddAttribute(HtmlTextWriterAttribute.Type, "text/javascript");
     output.RenderBeginTag(HtmlTextWriterTag.Script);
     output.Indent++;
     output.WriteLine("var RecaptchaOptions = {");
     output.Indent++;
     output.WriteLine("theme : '{0}',", this.theme ?? string.Empty);
     if (this.customThemeWidget != null)
     {
      output.WriteLine("custom_theme_widget : '{0}',", this.customThemeWidget);
     }
     output.WriteLine("tabindex : {0}", this.TabIndex);
     output.Indent--;
     output.WriteLine("};");
     output.Indent--;
     output.RenderEndTag();
     output.AddAttribute(HtmlTextWriterAttribute.Type, "text/javascript");
     output.AddAttribute(HtmlTextWriterAttribute.Src, this.GenerateChallengeUrl(false), false);
     output.RenderBeginTag(HtmlTextWriterTag.Script);
     output.RenderEndTag();
     output.RenderBeginTag(HtmlTextWriterTag.Noscript);
     output.Indent++;
     output.AddAttribute(HtmlTextWriterAttribute.Src, this.GenerateChallengeUrl(true), false);
     output.AddAttribute(HtmlTextWriterAttribute.Width, "500");
     output.AddAttribute(HtmlTextWriterAttribute.Height, "300");
     output.AddAttribute("frameborder", "0");
     output.RenderBeginTag(HtmlTextWriterTag.Iframe); // Change this to object HTML tag
     output.RenderEndTag();
     output.WriteBreak();
     output.AddAttribute(HtmlTextWriterAttribute.Name, "recaptcha_challenge_field");
     output.AddAttribute(HtmlTextWriterAttribute.Rows, "3");
     output.AddAttribute(HtmlTextWriterAttribute.Cols, "40");
     output.RenderBeginTag(HtmlTextWriterTag.Textarea);
     output.RenderEndTag();
     output.AddAttribute(HtmlTextWriterAttribute.Name, "recaptcha_response_field");
     output.AddAttribute(HtmlTextWriterAttribute.Value, "manual_challenge");
     output.AddAttribute(HtmlTextWriterAttribute.Type, "hidden");
     output.RenderBeginTag(HtmlTextWriterTag.Input);
     output.RenderEndTag();
     output.Indent--;
     output.RenderEndTag();
    }