-1
私は、recaptchaがfalseを返す場合にフォームを停止しようとしていますが、それでもフォームは送信されます。私もe.preventDefaultを使用していますが、それは動作していないので、正しくないものでなければなりません。recaptcha 2はfalseを返しますが、依然としてfomを送信します
ご協力いただきありがとうございます。
のjQuery:
submit: function() {
$form = $('#registration-form');
$form.submit(function (e) {
$output = _validate($form);
if($output == false) {
e.preventDefault(e);
} else {
$.ajax({
type: "POST",
url: "http://" + window.location.hostname + "/wp-content/themes/Listex/includes/plugins/forms/recaptcha.php",
async: false,
data: "g-recaptcha-response=" + grecaptcha.getResponse(),
success: function(response) {
alert(response);
if (response == "false")
return false;
}
});
}
});
は}、
recaptcha.php:
<?php
$secret="secret code";
$response = $_POST["g-recaptcha-response"];
$verify=file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret={$secret}&response={$response}");
$captcha_success = json_decode($verify);
echo json_encode($captcha_success->success);
あなたは、私がstackoverflowの上で見て、まだないと動作しませんしようとした何かのthats申し訳ありません、非同期コールバック関数 – geocodezip
から何かを返すことはできません – Max