mam problem z funkcją "blokuj_klawisze(e)":
<!doctype html> <html lang="pl" dir="ltr"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body> <script language="JavaScript"> function blokuj_klawisze(e) { e = e || event; var key = window.event ? e.keyCode : e.which; var keychar = String.fromCharCode(key); reg = /\d|\r|\W/; return reg.test(keychar); } </script> <input id=litera01 type=button onclick=d(this.value); value=а> <input id=litera02 type=button onclick=d(this.value); value=б> <input id=litera03 type=button onclick=d(this.value); value=в> <input id=litera04 type=button onclick=d(this.value); value=г> <input id=litera05 type=button onclick=d(this.value); value=д> <input id=litera06 type=button onclick=d(this.value); value=е> <input id=litera07 type=button onclick=d(this.value); value=ё> <input id=litera08 type=button onclick=d(this.value); value=ж> <input id=litera09 type=button onclick=d(this.value); value=з> <input id=litera10 type=button onclick=d(this.value); value=и> <input id=litera11 type=button onclick=d(this.value); value=й> <input id=litera12 type=button onclick=d(this.value); value=к> <input id=litera13 type=button onclick=d(this.value); value=л> <input id=litera14 type=button onclick=d(this.value); value=м> <input id=litera15 type=button onclick=d(this.value); value=н> <input id=litera16 type=button onclick=d(this.value); value=о> <input id=litera17 type=button onclick=d(this.value); value=п> <input id=litera18 type=button onclick=d(this.value); value=р> <input id=litera19 type=button onclick=d(this.value); value=с> <input id=litera20 type=button onclick=d(this.value); value=т> <input id=litera21 type=button onclick=d(this.value); value=у> <input id=litera22 type=button onclick=d(this.value); value=ф> <input id=litera23 type=button onclick=d(this.value); value=х> <input id=litera24 type=button onclick=d(this.value); value=ц> <input id=litera25 type=button onclick=d(this.value); value=ч> <input id=litera26 type=button onclick=d(this.value); value=ш> <input id=litera27 type=button onclick=d(this.value); value=щ> <input id=litera28 type=button onclick=d(this.value); value=ъ> <input id=litera29 type=button onclick=d(this.value); value=ы> <input id=litera30 type=button onclick=d(this.value); value=ь> <input id=litera31 type=button onclick=d(this.value); value=э> <input id=litera32 type=button onclick=d(this.value); value=ю> <input id=litera33 type=button onclick=d(this.value); value=я> <form action="" method="get"> <input id=txt type="text" name="wyszukiwarka" onkeypress='return blokuj_klawisze(event)'/> <input type="submit" name="oursubmit" value="Szukaj" /> </form> <script language="JavaScript"> function d(x){ document.getElementById("txt").focus(); poczatek=document.getElementById("txt").selectionStart; koniec=document.getElementById("txt").selectionEnd; przedzaznaczonym=document.getElementById("txt").value.substring(0,poczatek); zaznaczone=document.getElementById("txt").value.substring(poczatek,koniec); pozaznaczonym=document.getElementById("txt").value.substring(koniec,document.getElementById("txt").value.length); document.getElementById("txt").value=przedzaznaczonym+x+pozaznaczonym; } </script> </body> </html>
chodzi o to, że w polu tekstowym chciałem blokować klawisze liter, jeśli chodzi o podstawowe znaki (a, b, c, d, e, ...) to funkcja "blokuj_klawisze(e)" radzi sobie z nimi dobrze, problem pojawia się, gdy chodzi o polskie litery [czyli kombinacja klawiszy AltGr+litera (a, c, ...) = ą, ć] wtedy litera jest wprowadzana w pole tekstowe, a chodzi o to, żeby nie była. Dodatkowo chcę aby funkcjonalność innych klawiszy pozostała bez zmian. Moje pytanie brzmi co muszę zmodyfikować w funkcji "blokuj_klawisze(e)", aby osiągnąć ten efekt?