連絡先ページに recaptcha を使用した検証グループがあります。これはよく知られた問題であることはわかっていますが、指示に従いましたが、検証グループを送信ボタンに配置するたびに RecaptchaControl_ServerValidate が起動しません
<asp:CustomValidator ID="RecaptchaValidator" runat="server"
OnServerValidate="RecaptchaValidator_ServerValidate"
ErrorMessage="Recaptcha input invalid." ValidationGroup="Uyelik"
EnableClientScript="False" />
<recaptcha:Recaptchacontrol ID="RecaptchaControl" theme="custom" runat="server" publickey="6Lfr........."
customthemewidget="recaptcha_widget" privatekey="6Lfr.........." />
<asp:Button ID="btnSubmit" runat="server" Text="JOIN GOBLEN SANAT"
OnClick="btnSubmit_Click" ValidationGroup="Uyelik"/>
コードビハインド
protected void RecaptchaValidator_ServerValidate(object source, ServerValidateEventArgs e)
{
this.RecaptchaControl.Validate();
e.IsValid = this.RecaptchaControl.IsValid;
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
if (Page.IsValid && RecaptchaControl.IsValid)
{
// do something
}
}
else
{
lblResult.Visible = true;
lblResult.Text = "Incorrect";
}
}
注: 15 時間の試行の後、私はそれを動作させることができました。
キーは、CustomValidator、RequiredFieldValidator、CompareValidator、および validationSummary で、すべてのバリデーターの EnableClientScript を False にすると機能します。