login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Numerieke input afdwingen

Offline Dark_Paul - 14/02/2007 14:18
Avatar van Dark_PaulPHP ver gevorderde Hej mensen,
Ik probeer een Javascriptje te maken die alle tekens langsgaat in mn veld en alle niet-numerieke tekens eruit vist.
Hier in de scriptlibrary staat ook wel zoiets, maar daar snap ik niets van en ik wil ze wel snappen.
Dit heb ik nu:
  1. <? // kleurtjes
  2. function NumericInput (number, productid) {
  3. var numb = new Array();
  4. for (var i=0; i < number.length; i++) {
  5. if (!isNaN(number[i])) {
  6. numb[i] = number[i];
  7. }
  8. }
  9. var newnumb = (numb.length == 0) ? '0' : numb.join('');
  10. var divid = 'product'+productid;
  11. document.getElementById(divid).value = number;
  12. document.getElementById(divid).focus;
  13. }

en ik roep 'm aan via een onkeydown-event.
Het probleem is dat alle letters gewoon blijven staan, terwijl het mijn bedoeling was die eruit te filteren en dan de waarde terug te zetten.

3 antwoorden

Gesponsorde links
Offline Rik - 14/02/2007 14:33 (laatste wijziging 14/02/2007 14:33)
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Een snellere manier om alleen nummers over te houden is dit:
  1. <? //kleur
  2. var str = '0a1b2c3d4';
  3. str = str.replace(/[^0-9]/g, '');


En mss helpt het ook als je "newnumb" in de div zet ipv "number" in regel 11. 
Offline Dark_Paul - 14/02/2007 15:51
Avatar van Dark_Paul PHP ver gevorderde Oké, dankje!
Ik denk veel te moeilijk 
Offline Thomas - 14/02/2007 15:57
Avatar van Thomas Moderator Alle form-input is TEXT.

Als je er nummers van wilt maken gebruiken, voer je hier parseInt() op uit. Vervolgens kun je met isNaN() kijken of het daadwerkelijk een nummer betreft.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.202s