2017-05-10 7 views
1
あなたがテキストフィールドに入力している場合、その後、あなたの次のキーを押しても何も起こりませんEnterキーを押し、しかし、その中にこのウィジェットの実装に問題があるように思わ

https://api.jquerymobile.com/filterable/フィルター可能なウィジェットの問題Enterキー

効果はありません。例えば:

  1. テキストフィールドにフォーカス
  2. プレスは
  3. プレスは(変更なし)
  4. プレス(変更なし)
  5. を入力します( '' フィールドに表示されます) a(aaはフィールドに表示されます)

私はan issue、howeve短期的には注目されるだろうか。誰でも回避策を提案しますか?

+1

https://github.com/jquery/jquery-mobile/ blob/master/js/widgets/filterable.js#L210はフォームのサブミットを防ぎます_。 – Omar

+0

@Omar:BTW、最近の2年間に表現されたすべての修正を含む(非公式の)きれいで洗練されたJQM 1.4.6フォークについて知っていますか?私はフォーク(表示するには多すぎる)をブラウズすることができません。 – deblocker

+0

@deblocker私は正直であるとは思わない。マスターブランチを試しましたか?または、jQueryフォーラムで尋ねることができます。 – Omar

答えて

2

少なくとも我々は、別のキー入力をシミュレートすることにより、_preventKeyPressフラグを復元するためにJQMを伝えることができます。

$(document).on("keyup", ".ui-input-search>input", function(e) { 
    var key = e.keyCode ? e.keyCode : e.which ? e.which : 0; 
    if(key == 13) { 
    $(this).trigger(jQuery.Event("keypress", { 
     srcElement: this, 
     bubbles: true, 
     cancelable: true, 
     which: 0, 
     keyCode: 0, 
     charCode: 0, 
     target: this, 
     currentTarget: this, 
     eventPhase: 2, // AT TARGET 
     type: "keypress", 
     view: e.view, 
     returnValue: true 
    })); 
    } 
}); 

EDIT:

ただ、完全を期すために、ここでOmarから解決策があります

https://github.com/jquery/jquery-mobile/issues/8571#issuecomment-300430818

+0

は素晴らしいです。ありがとう! – pstanton

関連する問題