Lehetséges, hogy a „tiltás” időszak kulcsot HTML számos területen használ Android szoftver billentyűzet egy Android Web View HTML5 alkalmazást?

szavazat
0

Amikor ellenőrizze a plusz gombhoz a softKeyboard az [.] [-] [], a e.key a JavaScript nincs „azonosítatlan”, és a e.keyCode 229 az összes ezeket a karaktereket.

A készülék Én használ egy TC52k szkenner és a leolvasó ravaszt azonos kulcs címed és ... ezért nem lehet teljesen le van tiltva.

Nem tudom, hogy sok mindent megpróbáltam, hogy nem dolgozik ... de én is hozzászólok néhány ...

Ez egy dinamikus mező binded a rivets.js használatával JSON tárgyak

$(document).on(keydown, .qty-input, function(e) {
    let code = e.keyCode;
    if (code == 229 && $(this).val().charAt(str.length - 1) == .) {
        $(this).val($(this).val().slice(0, -1));
    }
});

^ Alapvetően azt mondja, hogy ha az utolsó karakter a kód 229, és az utolsó karakter a beírt szöveg egy „”, majd vágjuk utolsó karaktere ki ... de nem működik megfelelően.

Azt is ezt tette, hogy alapvetően azt mondja, hogy csak akkor fogadja el a kulcsokat, amelyekhez keycode 48 és 57, amelyek 1-9 gombok az Android szoftver billentyűzet.

<input class=qty-input placeholder=0 type=number min=0 step=1 onkeypress=return event.charCode >= 48 && event.charCode <= 57 && event.keyCode != 229 pattern=[0-9]* autofocus>

Szintén nem működik ...

Van valakinek tapasztalata ezzel, és segít? Tudom, hogy sok a megoldatlan hozzászólás található az interneten. Ez az utolsó dolog, amit meg kell csinálni, és annak vezetése én alkalmazást telepítik!

Szintén ... Megpróbáltam ezeket a funkciót események: keyup, keydown, a változás, a bemeneti és gombnyomás ...

A kérdést 14/02/2020 00:06
a forrás felhasználó
Más nyelveken...                            


1 válasz

szavazat
0

Itt a legjobb megoldás, amit találtam (mivel 229 is kiváltja a „kutató” ravaszt, azt kell felismerni, hogy egy string tartalmazza a vonalkód és a mennyiség lesz szétválasztani a két (a keycode egy [.]újra van ugyanaz, mint az keycode a szkenner ravaszt)) az 2. feltételek határozzák meg 2 dolgot:

Ha az érték több mint 3, akkor nem szabad, mint a mennyiség, mert a mennyiség nem lehet több mint „500”, így ha a hossza több mint 5, úgy vélik, hogy egy vonalkód.

let oldVal = '';
let newVal = '';
let barcode = '';
$(document).on("keydown", "input.received-qty", function(e) {
    let code = e.keyCode || e.which || e.charCode;
    oldVal = $(this).val();
});

$(document).on("keyup", "input.received-qty", function(e) {
    let code = e.keyCode || e.which || e.charCode;
    newVal = $(this).val();
    if (code == 229 && e.target.value.length >= 3) {
        barcode = $(this).val().slice(oldVal.length - 1, -1);
        $(this).val(oldVal);
    } else if (code == 229 && e.target.value.length <= 3) {
        let x = oldVal.replace(/[.,\/#!$%\^&\*;:{}=\-_`~()]/g, "");
        $(this).val('');
        $(this).val(x);
    }
    console.log("oldVal : ", "[", oldVal, "]", "newVal : ", "[", $(this).val(), "]");
});

Ez a legjobb módja annak, próbáltam eddig.

Válaszolt 18/02/2020 21:35
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more