JavaScript/DOM/Document/forms/encoding
Die Eigenschaft encoding speichert den Wert, der bei der Definition des Formulars im Attribut enctype steht, also zum Beispiel "text/plain"
.
<html>
<head>
<title>Test</title>
<script>
function CodeTyp () {
if (document.Testform.action.indexOf("@") > 0) {
document.Testform.encoding = "text/plain";
} else {
document.Testform.encoding = "application/x-www-form-urlencoded";
}
return true;
}
</script>
</head>
<body>
<form name="Testform" action="mailto:beispiel@example.org" onsubmit="return CodeTyp()">
<input type="text" size="40" name="Eingabe">
<input type="submit" value="Absenden">
</form>
</body>
</html>
Das Beispiel enthält ein Formular. Wenn der Anwender das Formular durch Anklicken des Submit-Buttons abschickt, wird die Funktion CodeTyp()
aufgerufen.
Innerhalb der Funktion CodeTyp()
wird ermittelt, ob in der action-Angabe des Formulars das Zeichen @
vorkommt, das eine E-Mail-Adresse verrät. Wenn ja, wird der Kodierungstyp auf text/plain
gesetzt, ansonsten auf den für CGI-Programme üblichen Kodiertyp application/x-www-form-urlencoded
. Die Funktion CodeTyp()
gibt true zurück, denn der aufrufende Event-Handler onsubmit im einleitenden <form>-Tag erwartet einen solchen Rückgabewert. Das Formular wird nur abgeschickt, wenn der Rückgabewert true ist.
Um in einer Zeichenkette nach einem oder mehreren Zeichen zu suchen wie im Beispiel mit der Methode indexOf(), lesen Sie den Abschnitt über das string-Objekt.