HTML und XHTML
Dieser Fehler bezieht sich auf:
Internet Explorer 6 löst den onclick-Event auch dann aus, wenn ein Radiobutton mit onclick den Fokus erhält; das Hinzufügen von anderen Event-Handlern (onxxx-Attributen), um dies zu vermeiden, funktioniert nicht.
Dieses Dokument beschreibt einen Fehler, der auftritt, wenn die Änderung des Status eines Radiobuttons, eines Kontrollkästchen oder eines Punktes in einer Auswahlliste dazu führt, dass ein neues Fenster geöffnet wird. Es ist möglich, Scripting zu benutzen, um ein input
-Element zu erstellen, dass zu einer Änderung des Kontextes führt (Formular absenden, eine neue Seite öffnen, ein neues Fenster), wenn das Element ausgewählt wird. Entwickler können stattdessen eine Absenden-Schaltfläche benutzen (siehe G80: Bereitstellung einer submit-Schaltfläche, um eine Änderung zu Kontextes einzuleiten) oder deutlich auf den erwarteten Vorgang hinweisen.
Das Beispiel unten scheitert am Erfolgskriterium, weil es das Formular verarbeitet, wenn ein Radiobutton ausgewählt wird statt dass eine Absenden-Schaltfläche benutzt wird.
Code-Beispiel:
<script type="text/JavaScript">
function goToMirror(theInput) {
var mirrorSite = "http://download." + theInput.value + "/";
window.open(mirrorSite);
}
</script>
…
<form name="mirror_form" id="mirror_form" action="" method="get">
<p>Please select a mirror download site:</p>
<p>
<input type="radio" onclick="goToMirror(this);" name="mirror"
id="mirror_belnet" value="belnet.be" />
<label for="mirror_belnet">belnet (<abbr>BE</abbr>)</label><br />
<input type="radio" onclick="goToMirror(this);" name="mirror"
id="mirror_surfnet" value="surfnet.nl" />
<label for="mirror_surfnet">surfnet (<abbr>NL</abbr>)</label><br />
<input type="radio" onclick="goToMirror(this);" name="mirror"
id="mirror_puzzle" value="puzzle.ch" />
<label for="mirror_puzzle">puzzle (<abbr>CH</abbr>)</label><br />
<input type="radio" onclick="goToMirror(this);" name="mirror"
id="mirror_voxel" value="voxel.com" />
<label for="mirror_voxel">voxel (<abbr>US</abbr>)</label><br />
</p>
</form>
Es gibt für diese Technik keine Ressourcen.
(derzeit keine aufgelistet)
Finden Sie jedes Formular auf einer Seite.
Prüfen Sie für jedes Formular-Steuerelement, bei dem es sich um einen Radiobutton, ein Kontrollkästchen oder einen Punkt in einer Auswahlliste handelt, ob die Änderung des Status des Steuerelementes ein neues Fenster öffnet.
Prüfen Sie bei jedem neuen Fenster, das aus Schritt 2 resultiert, ob der Benutzer vorab gewarnt wird.
Wenn Schritt #3 falsch ist, dann gilt diese Fehlersituation und der Inhalt scheitert am Erfolgskriterium.