0

私は Primefaces を使用していますが、Ajax でレンダリング/更新できないため、p:captcha コンポーネントを使用できません。
そのため、recaptcha.create を使用して、reCaptcha の Ajax Api を使用してフォーム上に動的に作成しようとしています。コードは次のとおりです。

Recaptcha.create(/*public_code*/,
                        'captchadiv', {
                            tabindex : 1,
                            theme : "red",
                            callback : Recaptcha.focus_response_field
                        });

Captcha が作成されましたが、p:commandButton などの ajax ボタンからのアクションは検証されません。私は何を間違っていますか?

4

1 に答える 1

0

私は Primefaces を使用していますが、Ajax でレンダリング/更新できないため、p:captcha コンポーネントを使用できません。

間違い。p:captcha要素にはid属性があるため、AJAXを使用して更新できます。またはにrendered設定できる属性もあります。実行時でも可能です。truefalse

Captcha が作成されましたが、p:commandButton などの ajax ボタンからのアクションは検証されません。私は何を間違っていますか?

あなたがレンダリングしているキャプチャ要素は、JSF/PrimeFaces と統合されていないと思います。;-)

次のように PrimeFaces の captcha 要素を使用しない理由は次のとおりです。

<div id="captchaWrapper">
    <p:captcha rendered="captchaBean.rendered"/>
</div>
<p:commandButton value="render" action="#{captchaBean.render}" 
    update="captchaWrapper"/>

そして、次のようなバッキング Bean を用意します。

public class CaptchaBean
{
    //Getter/setter omitted
    private boolean rendered;

    public void render()
    {
        rendered = true;
    }
}
于 2012-09-11T13:13:32.313 に答える