Message-boxen
Web-pagina's kunnen zelf meldingen geven en/of informatie vragen in een zg. Message-box. In het Nederlandse
computer jargon heet dat een dialoogvenster.
Hier staan een paar voorbeelden. Je kunt die testen door op de knop "Test" de drukken.
- Alleen het relevante deel van de code wordt getoond. De code is echter steeds onderdeel van een stukje JavaScript.
- Elke opdracht waarin een string voorkomt moet op één regel staan. Hieronder is dat echter niet altijd het geval (hangt af van de grootte van het browser-venster op het scherm).
- Voor het gebruik van de \ (backslash) wordt verwezen naar het item "Werken
met strings".
- Waarschuwing -- alert()
Code:window.alert('Ben\'s Hobbyhoekje\n\nDit is een waarschuwing!')
- Vraag: Ja of nee -- confirm()
Code:if (window.confirm('Ben\'s Hobbyhoekje\n\nDruk op \'OK\' als je het goed vindt, anders druk je op \'Annuleren\'')) {
Als de gebruiker op "OK" drukt, geeft windows.confirm de waarde true terug. Bij een druk op "Annuleren" wordt false teruggegeven. Deze code gebruik je daarom altijd in een if-then-else constructie.
;alert('Je hebt op \'OK\' gedrukt');
} else {
alert('Je hebt op \'Annuleren\' gedrukt!');
}
- Vraag om informatie: prompt()
Code:var tekst = window.prompt('Ben\'s Hobbyhoekje','Typ wat in en druk op \'OK\' of op \'Annuleren\'');
Als de gebruiker op "OK" drukt, geeft windows.prompt de ingevoerde tekst terug. Bij een druk op "Annuleren" wordt null teruggegeven. Dit is een lege string. Het is daarom verstandig daar even op te testen.
if (tekst != null) {
alert('De tekst in de invoer-regel was:\n\n' + tekst);
} else {
alert('Je hebt op \'Annuleren\' gedrukt!');
}
Opmerking: De informatie die je met prompt() vraagt kan verkeerd worden gebruikt. Daarom zal een goed beveiligde browser altijd vragen om toestemming alvorens de prompt-dialog te tonen, tenzij je je browser zo hebt ingesteld dat een prompt altijd wordt getoond.
Als je wilt voorkomen dat de bezoekers hiermee worden lastig gevallen, ben je aangewezen op een formulier.
Opmerking:
Je mag de verwijzing naar het object window weglaten, omdat window het "default"-object
is binnen JavaScript. In plaats van: window.alert('melding') mag je ook schrijven: alert('melding').
Hetzelfde geldt voor confirm en prompt.