Controle numeriek na klik op knop

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jos Vermassen

Jos Vermassen

22/01/2013 13:36:13
Quote Anchor link
Hallo,

Ik moet een opdracht maken voor school, maar ik ben nog een beetje nieuw met javascript.
Na het klikken op een knop (<button id="btnSearch" onclick="klik()">Opzoeken</button>) wil ik graag de functie klik() oproepen.
In deze functie moet ik controleren of de waarde in het tekstvak (<input type="text" id="txtNumber" />) numeriek is.
Als ik op deze knop klik, dan krijg ik altijd alert("Dit is een getal"), ook als ik niets of een letter ingeef.

Hier is mijn code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
function klik() {
    var invoer = document.getElementById('txtNumber').innerText;
    
    if(isNaN(invoer)) {
        alert("Voer een getal in");
    }
    else if (invoer > 11) {
        alert("voer een getal in tussen 0 en 10");
    }
    else {
        alert("Dit is een getal");
    }
}
Gewijzigd op 22/01/2013 14:26:14 door Jos Vermassen
 
PHP hulp

PHP hulp

26/12/2024 02:51:14
 
Kris Peeters

Kris Peeters

22/01/2013 14:46:13
Quote Anchor link
Wel, een <input> heeft geen innerText of -HTML; wel een value

Dat wordt dus
var invoer = document.getElementById('txtNumber').value;

Trouwens ... Als je verwacht dat zo'n waarde een getal is, doe het dan zo:
var invoer = Number(document.getElementById('txtNumber').value);
 
Jos Vermassen

Jos Vermassen

22/01/2013 14:55:31
Quote Anchor link
Kris Peeters op 22/01/2013 14:46:13:
Wel, een <input> heeft geen innerText of -HTML; wel een value

Dat wordt dus
var invoer = document.getElementById('txtNumber').value;

Trouwens ... Als je verwacht dat zo'n waarde een getal is, doe het dan zo:
var invoer = Number(document.getElementById('txtNumber').value);

Oké, bedankt!
Maar ik krijg nog steeds de alert uit mijn else, doe ik nog iets verkeerd?
En is het de beste manier met 'isNaN'?
 
Kris Peeters

Kris Peeters

22/01/2013 15:28:23
Quote Anchor link
Dat werkt toch ?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<script>
function klik() {
    var invoer = Number(document.getElementById('txtNumber').value);
    
    if(isNaN(invoer)) {
        alert("Voer een getal in");
    }
    else if (invoer > 11) {
        alert("voer een getal in tussen 0 en 10");
    }
    else {
        alert("Dit is een getal");
    }
}
</script>
<input id="txtNumber" value="17.9"> <button onclick="klik()">Klik</button>
 
Jos Vermassen

Jos Vermassen

22/01/2013 15:31:27
Quote Anchor link
Kris Peeters op 22/01/2013 15:28:23:
Dat werkt toch ?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<script>
function klik() {
    var invoer = Number(document.getElementById('txtNumber').value);
    
    if(isNaN(invoer)) {
        alert("Voer een getal in");
    }
    else if (invoer > 11) {
        alert("voer een getal in tussen 0 en 10");
    }
    else {
        alert("Dit is een getal");
    }
}
</script>
<input id="txtNumber" value="17.9"> <button onclick="klik()">Klik</button>


Het is opgelost bedankt, voor je hulp!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.