FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Medlem
|
<!--
function IsNumeric(sText) { var ValidChars = "0123456789"; var IsNumber=true; var Char; for (i = 0; i < sText.length && IsNumber == true; i++) { Char = sText.charAt(i); if (ValidChars.indexOf(Char) == -1) { alert('Endast siffror får användas i detta fält!') this.value = sText.replace(Char,'') } } } --> </script> Lägger ovanstående skript i onKeyUp-eventet i ett input-element. Argumentet är this.value .. tanken är att så fort man skriver en bokstav skall den tas bort, men det fungerar inte.. varför inte? kan någon hjälpa mig med hur det skall skrivas? Tack |
||
![]() |
![]() |
![]() |
#2 | ||
|
|||
Administratör
|
this.value betyder där fönsterobjektets värde. Från eventen får du inte inputen som this utan fönsterobjektet. Ändra argument till enbart this och funktionen till följande, så funkar det förutsatt att besökaren inte skriver snabbt.
Kod:
function IsNumeric(objekt) { var sText = objekt.value; var ValidChars = "0123456789"; var IsNumber=true; var Char; for (i = 0; i < sText.length && IsNumber == true; i++) { Char = sText.charAt(i); if (ValidChars.indexOf(Char) == -1) { alert('Endast siffror får användas i detta fält!') objekt.value = sText.replace(Char,'') } } }
__________________
eldefors.com - Personlig (teknik)-blogg |
||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Medlem
|
Ah, tack.
|
||
![]() |
![]() |
Svara |
|
|