onKeyPress backspace nem működik ie-ben
Sziasztok!
A következő problémában kérném a segítségeteket:
Van egy input mezőm, az ebbe írt tartalmat javascripttel (onKeyPress eseménykezelő) íratom ki egy divbe. Ez eddig rendben is van. A gond a törlésnél jelentkezik. Ugye backspace lenyomására nem csak a formból, de a div-ből is el kellene tűnjön az utolsó karakter.
Ezt úgy oldottam meg, hogy ha a billentyű ascii kódja "8" akkor vágjon le egy karaktert a szöveg végéből. Minden rendes böngészőben működik is, kivéve persze IE, melynél ugyanis az onKeyPress nem érzékeli a vezérlőbillentyűk lenyomását.
Tudtok-e valamilyen megoldást ez ügyben?
Előre is köszi!
Nutec
Próbálkoztam onKeyDown-nal is, de annál meg az ékezetes és egyéb karakterek megjelenítése nem jó, valamint mindent nagybetűvel ír!
■ A következő problémában kérném a segítségeteket:
Van egy input mezőm, az ebbe írt tartalmat javascripttel (onKeyPress eseménykezelő) íratom ki egy divbe. Ez eddig rendben is van. A gond a törlésnél jelentkezik. Ugye backspace lenyomására nem csak a formból, de a div-ből is el kellene tűnjön az utolsó karakter.
Ezt úgy oldottam meg, hogy ha a billentyű ascii kódja "8" akkor vágjon le egy karaktert a szöveg végéből. Minden rendes böngészőben működik is, kivéve persze IE, melynél ugyanis az onKeyPress nem érzékeli a vezérlőbillentyűk lenyomását.
Tudtok-e valamilyen megoldást ez ügyben?
Előre is köszi!
Nutec
Próbálkoztam onKeyDown-nal is, de annál meg az ékezetes és egyéb karakterek megjelenítése nem jó, valamint mindent nagybetűvel ír!
Hú, asszem megoldottam..
Azért, ha valakinek van egy használhatóbb megoldása azt szívesen fogadom!
Üdv.:
Nu7ec
re
szóval ha már megvan az event akkor
charCode number ill. undefined lehet (ahol nincs támogatva). Szóval karaktereknél a fenti kód kéne, nem karaktereknél meg a keydown szvsz (az ESC-az keypress, erre emlékszem mert be...ptam :) ), és mivel nemkaraktereknél a keydown ismétlődik a végén egy keyup-al versus a karaktereknél ismétlődő keydown keypress ... és a végén egy keyup-al, szerintem kivitelezhető ... de azért írd meg a végső megoldást ;).
üdv Csaba
ui: karakterkódból String.fromCharCode()-al lesz karakter :)
ui2: http://www.yuiblog.com/blog/2009/04/27/video-ppk-jsevents/ bővebben a témáról
Köszi szépen!
Bár én úgy vettem észre, hogy a keyCode-ot mindegyik támogatja, charCode csak a bill.kombóknál kell általában, bár safariban nem próbáltam. A charCode-ot az ie tényleg nem nagyon kultiválja:).
A megoldás viszont az eseménykezelő megváltoztatásával jött. Kb. azt csináltam amit leírtál, de egyenlőre csak backspace-re állítottam be (onmousedown-t).
Kész megoldást még nem írnék be, mert szerintem van még mit javítanom rajta:). A charCode-ot még át kellene néznem, mert csak tessék-lássék maradt időm rá, de nagy betűkre szükségem lesz :).
Az alkalmazás amúgy sem túl releváns az oldal szempontjából. Csak a felhasználó űrlapba beírt nevét írná be egy mintalevélben kihagyott üres helyre(a regisztráltaknál meg amúgy is a felhasználónév az alapértelmezett), de jó alkalomnak tűnik kissé jobban beleásnom magam a témába, hátha készítek még hasonló alkalmazást, ahol nagyobb hangsúlyt kap a karakterbevitel.
Ki tudja, lehet le is írom majd a témában összegyűjtött ismereteimet:D!
Magyarul úgysem nagyon találtam összefoglalót a témáról!
Üdv.: Nu7ec
ui: a String.fromCharCode()-ra szükségem volt, hogy működjön a beírás:), azért köszi:)