Beviteli mezőben csak szám karakter leütésének engedélyezése
Sziasztok
Van egy javascript kódom amivel beviteli mezőbe leütött billentyűzetet ellenőrzőm, ezt úgy hogy a beviteli mezőben csak szám alapú billentyű leütések jelennek meg.
A problémám az hogy egy űrlapnál csak egy beviteli mezőt tudok vele ellenőrizni.
Mármost nekem kilenc beviteli mezőt kellene leellenőriznem.
Ami problémám a kóddal hogy ha többször használom ugyanazt a kódot /az azonosító átírásával/ akkor az összes közül csak az utolsó javascript kód működik, a többi meg nem.
A kérdésem az hogy miképpen tudnám úgy átalakítani hogy több azonosítót is tudjak leellenőrizni?
Ezeket az azonosítókat szeretném még hozzáfűzni úgy hogy rendesen működjön az összes beviteli mezőn.
■ Van egy javascript kódom amivel beviteli mezőbe leütött billentyűzetet ellenőrzőm, ezt úgy hogy a beviteli mezőben csak szám alapú billentyű leütések jelennek meg.
A problémám az hogy egy űrlapnál csak egy beviteli mezőt tudok vele ellenőrizni.
Mármost nekem kilenc beviteli mezőt kellene leellenőriznem.
Ami problémám a kóddal hogy ha többször használom ugyanazt a kódot /az azonosító átírásával/ akkor az összes közül csak az utolsó javascript kód működik, a többi meg nem.
A kérdésem az hogy miképpen tudnám úgy átalakítani hogy több azonosítót is tudjak leellenőrizni?
<script type="text/javascript">
<!--
window.onload = function() {
document.getElementById('arRange').onkeypress = function(e) {
var c = (window.event ? e.keyCode : e.which);
if (isNaN(String.fromCharCode(c)) && c != 8 || c == 32 ) { return false; }
}
}
-->
</script>
'ccmRange'
'futott_km'
'uzemora'
'szelep_szam'
teljesitmeny
sajat_tomeg
ossztomeg
szall_szem_szam
<!--
window.onload = function() {
document.getElementById('arRange').onkeypress = function(e) {
var c = (window.event ? e.keyCode : e.which);
if (isNaN(String.fromCharCode(c)) && c != 8 || c == 32 ) { return false; }
}
}
-->
</script>
'ccmRange'
'futott_km'
'uzemora'
'szelep_szam'
teljesitmeny
sajat_tomeg
ossztomeg
szall_szem_szam
Ezeket az azonosítókat szeretném még hozzáfűzni úgy hogy rendesen működjön az összes beviteli mezőn.
Az azonosító (ID) átírásával
javascript
Nekem lenne pár észrevételem/javaslatom
2. Van egy ilyen eseménykezelőd:
window.event
objektum létezik (teljesül a feltétel), akkorc
felveszi ae.keyCode
értékét, vagyis felvenné, de nem fogja mert ebben az esetben az eseménykezelő nem kap argumentumot, tehát aze
nem definiált (undefined).3. mahoo kolega verziójában a 2. pontban említett probléma nem lett orvosolva. Ezen felül a két blokk egy szó kivételével megegyezik. A redundanciát illik elkerülni ha nincs rá indok (képzeld el mondjuk 100 input mezőnél ez hogy néz ki).
4. A javaslatom: http://jsfiddle.net/karvaly84/N4xvj/, az input mezőkhöz hozzá adtam egy
class="number"
osztályt, ami alapján ki választom azokat a mezőket ahova csak számot lehet bevinni. Így lehet 1000 ilyen mező is a kód hossza nem változik.IE8-tól kompatibilis, ha 7esre is kell tovább kel hekkelni, továbbá szebb lenne modernebb eseménykezelést alkalmazni. Ha kérdésed van írj!
Ez a megoldás sokkal jobb,
Bár teszem hozzá amit én írtam, azt nem is megoldásnak szántam, egyszerűen csak zavart, hogy olyan dolog volt leírva, ami vagy nem lett kipróbálva, vagy olyan alapvető hibán bukott el a dolog, ami alapján azt gondolom, hogy az info amit írtál nem biztos, hogy valóban segít a kérdezőnek a dolgok megértésében. No, de lehet, hogy csak én voltam/vagyok túl borúlátó ezzel kapcsolatban... annyit tényleg írhattam volna, hogy nézzen utána, hogyan hozhatna létre egy eseménykezelőt az adott feladatra.