2016-03-21 20 views
0

paper-inputフィールドを使用しているフォームは、chromeでEnterキーを押しても送信されません。しかし、他のすべてのブラウザでEnterキーを押すと送信されます。ここに関連するコードです:私はngSubmitを使用して、フォーム要素にsubmit()関数呼び出しを移動しようとしていると、隠しを追加しようとしているChromeでEnterキーを押したときにフォームが送信されないのはなぜですか?

<form [ngFormModel]="loginForm"> 
    <paper-input type="text" 
       ngControl="username" 
       label="Username" 
       auto-validate 
       pattern="{{usernameValidation.get()}}" 
       maxlength="20" 
       error-message="Alphanumeric and underscore characters only. [1-20]" 
       ngDefaultControl> 
     <iron-icon suffix icon="account-circle"></iron-icon> 
    </paper-input> 

    <paper-input type="password" 
       ngControl="password" 
       label="Password" 
       auto-validate 
       pattern="{{passwordValidation.get()}}" 
       maxlength="60" 
       error-message="Long passwords only. [8-60]" 
       ngDefaultControl> 
     <iron-icon suffix icon="fingerprint"></iron-icon> 
    </paper-input> 

    <paper-input type="submit" 
       value="Log In" 
       (click)="submit()" 
       [disabled]="!loginForm.valid || loading" 
       ngDefaultControl> 
    </paper-input> 
</form> 

は、標準の提出にChromeをだまして、フォームに入力を提出するが、運がなかったしています。私はまた、標準input要素とbuttonを使って試しました。どんな入力もここで評価されます。ありがとう!

誰かがダウンボトムを説明したいのであれば、私は自分の質問を修正することができます。

+0

私はそれが '

+0

助言@GordonFreemanに感謝しますが、私はこのエラーがPolymerに関連していると思います。 –

答えて

1

1つのオプションは、Polymerのa11y-keys要素を使用することです。

<iron-a11y-keys keys="enter" on-keys-pressed="submitForm" id="a11y"></iron-a11y-keys> 

これは、あなたの要素で定義した "submitForm"メソッドを起動します。ここにはa11y-keys要素のドキュメントがあります:https://elements.polymer-project.org/elements/iron-a11y-keys

関連する問題