2017-03-05 6 views
0

ember install ember-g-recaptchaを使用して私のアプリにember-g-recaptchaアドオンをインストールしました。私は、UIのrecaptchaを見ることができます。しかし、どうすればそのボックスがチェックされているかどうかをチェックすることができます。それがチェックされていない場合、私のフォームは送信してはならず、エラーメッセージが表示されるはずです。u3のrecaptchaレスポンスをキャプチャする方法

応答が空の場合にこのエラーメッセージを表示します。私は私のコントローラでこれを書いた:

onCaptchaExpired() { 
    $("#message").show(); 
    $("#message").css("color", "red"); 
    $("#message").html("Recaptcha response cannot be empty."); 
}, 

答えて

1

まず本当に DOMを管理するためにemberに頼るべきであり、jQueryで手動それをしません。

テンプレート:

{{g-recaptcha onSuccess=(action "onCaptchaResolved") onExpired=(action "onCaptchaExpired")}} 
{{captchaError}} 

<button disabled={{isInvalid}} /> 

コンポーネント:

Ember.Component.extend({ 
    isInvalid: true, 
    captchaError: null, 
    actions: { 
     onCaptchaResolved(captchaResult) { 
      this.set('isInvalid', false); 
     }, 
     onExpired() { 
      this.set('isInvalid', true); 
      this.set('captchaError', 'Recaptcha response cannot be empty.') 
     } 
    } 
}) 

これがすべきg-recaptchaコンポーネントがアクションを起動するとき

簡単な解決策は、単にブール値を切り替えることができどのようにこれを行うことができるか考えてください。

関連する問題