AJAX によって読み込まれたフォームがあり、そのフォーム内で reCaptcha コントロールをレンダリングしています。フォームを投稿すると、まず検証が行われ、Web サービスを使用してキャプチャが検証されます。すべてのデータが正しければ、フォームを投稿したいと思います。
しかし、最後の動作は追加されません...
私はこの投稿を読みました:
- preventDefault 後に送信できません
- event.preventDefault を再度有効にする方法は?
- デフォルトを防止した後の送信の再有効化
- jQuery: preventDefault() を呼び出した後にアクションのフォームを呼び出す
しかし、どのソリューションも機能しません... :(
私のコード:
$('#myForm').submit(function (e) {
e.preventDefault();
var captchaInfo = {
challengeValue: Recaptcha.get_challenge(),
responseValue: Recaptcha.get_response(),
};
$.ajax({
type: 'POST',
url: '@Url.Action("ValidateCaptcha")',
data: JSON.stringify(captchaInfo),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (msg) {
if (msg) {
$('#myForm').submit();
}
else {
helpers.setCaptcha("captcha");
}
},
error: function (req, status, error) {
alert("error: " + error);
helpers.setCaptcha("captcha");
},
});
});
これを解決するにはどうすればよいですか?
前もって感謝します