0

ログイン試行が何度か失敗したときにGoogle Captchaを使用しています。私のウェブサイトはに基づいているため、関数が呼び出されたときにGoogle CaptchaファイルAjax and Java Scriptをロードする必要があります。 Java Script

API にリクエストを送信してキャプチャ コードを取得しているhttp://www.myserver.com/api/?request=captchaので、これが返されます

<script type="text/javascript" src="http://www.google.com/recaptcha/api/challenge?k=6LeV3rdSAAAAABp2Q3bjyjCR9E6vvZ06oM6-6yj"></script>

$POSTリクエストを作成し.HTML、自分のサイトにキャプチャを表示するために使用します

$.post("api/index.php", {request: "captcha"}, function(data) {

    $('#customContent').html(data);
});

しかし、これは HTML 要素にキャプチャを表示しません! 私はどこで間違っていますか?

4

3 に答える 3

1

最後に、私は自分で答えを見つけました。あなたの答えに感謝します!

function showRecaptcha() {
        Recaptcha.create("your public key", 'captchadiv', {
        tabindex: 1,
        callback: Recaptcha.focus_response_field
        });
}  

loadまた、最初からGoogle Captcha Java Script を使用する必要はありません。関数を使用getScriptして Google Captcha スクリプトをロードし、失敗したロギング試行が最大回数発生したときに.done応答ステータスを使用してshowRecaptcha()関数を呼び出します。幸運を!

于 2013-07-06T04:35:36.820 に答える
1

この Google ページに移動し、Google キャプチャをページに動的に挿入するための指示に従います。あなたはあなたとは違うやり方でそれをしなければなりません。ajax を使用してコードをフェッチする場合は、上記のページを AJAX API というラベルの付いたセクションまで下にスクロールし、コード例に従ってください。

指示を正確に読む必要がありますが、基本的には常にこれをページに入れます。

<script type="text/javascript" src="http://www.google.com/recaptcha/api/js/recaptcha_ajax.js"></script>

キャプチャを挿入する場所のコンテナ div を作成して ID を指定し、キャプチャを挿入するときにキーと ID を使用してこれを呼び出します。

Recaptcha.create("your_public_key",
    "element_id",
    {
      theme: "red",
      callback: Recaptcha.focus_response_field
    }
  );

参考までに、私はこれを自分でやったことがありません。私はただグーグルで指示を読んだだけです。

于 2013-07-06T04:27:53.750 に答える
-1

jQuery を使用して document.write を使用するスクリプト タグを配置しないでください。代わりに、次のようにネイティブの JavaScript で配置します。

$.post("api/index.php", {request: "captcha"}, function(data) {

    $('#customContent')[0].appendChild(data);
});

それが役立つことを願っています!

于 2013-07-06T03:52:15.123 に答える