/ / Filtrovateľný problém s widgetom pomocou klávesu enter - jquery-mobile

Filtrovateľný problém s kľúčom Enter - jquery-mobile

https://api.jquerymobile.com/filterable/

pri implementácii tohto widgetu sa javí problém, že ak píšete do textového poľa, stlačte kláves Enter, nič sa nestane, ale vaše ďalšie stlačenie klávesu nebude mať žiadny vplyv. napr .:

  1. zameranie na textové pole
  2. stlačte a (v poli sa objaví „a“)
  3. stlačte kláves Enter (bez zmeny)
  4. stlačte a (bez zmeny)
  5. stlačte a (v poli sa objaví „aa“)

Som prihlásený problém, napriek tomu pochybujte, že si z krátkodobého hľadiska získa pozornosť. Navrhuje niekto riešenie?

odpovede:

2 pre odpoveď č. 1

Aspoň môžeme povedať JQM, aby obnovil _preventKeyPress príznak simuláciou ďalšieho stlačenia klávesov:

$(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:

Len pre úplnosť tu je riešenie od Omar:

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