JavaScript/Window/prompt

Aus SELFHTML-Wiki
Wechseln zu: Navigation, Suche

Die Methode Window.prompt() zeigt ein Dialogfenster mit einem Eingabefeld, einem OK-Button und einem Abbrechen-Button an. So lassen sich Anwendereingaben im Script weiterverarbeiten.

Syntax

wert = window.prompt(aufforderung, feldvorbelegung);

Erwartet zwei Parameter:

  • aufforderung: Text, der beschreibt, was der Anwender eingeben soll.
  • feldvorbelegung: Text, mit dem das Eingabefeld vorbelegt wird. Wenn Sie ein leeres Eingabefeld wollen, übergeben Sie dafür eine leere Zeichenkette .

Rückgabewert

Die Methode liefert die eingegebene Zeichenkette oder null, falls der Nutzer die Eingabe abgebrochen hat. Um zwischen einer Zeichenkette der Länge 0 und einem Abbruch zu unterscheiden, ist ein typsicherer Vergleich erforderlich.

Anwendungsbeispiel

Beispiel ansehen …
Check = prompt('Geben Sie Ihr Passwort für diese Seite ein', '');
if (Check != 'Rumpelstielz') {
  alert('Du kommst hier nicht rein!');
} else {
  alert('Sie haben Zutritt');
}

Das Beispiel bringt vor dem Anzeigen der HTML-Datei mit prompt() ein Dialogfenster auf den Bildschirm. Darin muss der Anwender ein Passwort eingeben. Die Eingabe wird in der Variablen check gespeichert. Wenn das eingegebene Wort stimmt, erhält er mit alert() die Meldung, dass er Zutritt hat, und die Seite wird geladen.

Beachten Sie: Das oben gezeigte Beispiel sollte auf keinen Fall als Zugangsschutz benutzt werden. Ein Zugangsschutz mit JavaScript ist in der Regel einfach zu umgehen, und nie vollständig sicher.
Hauptartikel: Sicherheit/Zugriffsschutz

Verwendung in iframes

Die Anzeige von modalen Dialogen in iframes unterliegt den Regeln, die das sandbox-Attribut des iframe-Elements festlegt.


Darüber hinaus soll die Anzeige modaler Dialoge aus iframes zukünftig (Stand August 2021) nur noch in Same-Origin Kontexten möglich sein[1].

Aussehen gestalten

Das Aussehen des Dialogfenster ist abhängig vom Betriebssystem und dem verwendeten Browser. Das bedeutet, Sie können die Auswahl nur mittels Steuerzeichen formatieren. Weitere Formatierungsmöglichkeiten stehen Ihnen nicht zur Verfügung.

Alternativ können Sie eine solche Dialog-Box in JavaScript nachbauen und anstelle von prompt() aufrufen.

Hauptartikel: JavaScript/Tutorials/Eigene modale Dialogfenster

Weblinks

Referenzen

  1. CSS-Tricks: Chris Coyier über die Missbilligung von modalen Dialogen, abgerufen am 10.08.2021

Siehe auch