1

RecaptchaをSilverstripeに実装しましたが、機能しているようです。唯一の問題は、フォーミュラとキャプチャコードがページの最後にあり、間違ったコードを入力すると、ページがリロードされて先頭に戻り、ユーザーにフォーミュラとキャプチャコードが表示されないことです。もう。

間違ったキャプチャコードを入力した後、ウィンドウが上にスクロールしないようにするにはどうすればよいですか?

4

1 に答える 1

4

HTTP 仕様では、アンカー タグを含むサーバー側のリダイレクトが許可されていないため、これを実現するには JavaScript を使用する必要があります。標準の SilverStripe フォーム レンダリングではフィールドが検証メッセージで強調表示されるため、送信されたフォームが再度読み込まれると、これを使用してフィールドの状態を判断できます。

jQuery(document).ready(function() {
    var captchaEl = jQuery('#MyCaptcha');
    if(captchaEl.find('.message.required').length) {
        window.scrollTo(0, captchaEl.scrollTop());
    }
});
于 2012-10-16T15:41:11.823 に答える