Die Aufgabe
3) JavaScript (12 Punkte)
a) Erläutern Sie die Wirkung der JavaScript Funktion fun im folgenden Ausschnitt:
<head> <title>Test</title> <script type="text/javascript"> function fun (b) { var f=b.parentNode.parentNode; var error=''; error += (f.t1.value=='')?'\nt1':''; error += (f.t2.value=='')?'\nt2':''; if (error != '') { alert('Bitte eingeben:'+error); } else { f.submit(); } } </script></head> <body> <form action="ip_alles_ok.html"> <p>t1: <input type="text" name="t1" /></p> <p>t2: <input type="text" name="t2" /></p> <p><input type="button" value="ok" onclick="fun(this)" /></p> </form></body>b) Welche Schwächen weist diese Art der Verwendung von JavaScript auf?
c) Geben Sie eine bessere Lösung an
Die Seite hat ein Formular mit zwei Textfeldern t1 und t2 und einem Knopf „ok“. Ein Klick ruft die Funktion fun auf.
Gesucht sind drei Antworten in Stichworten: (a) was fun bewirkt, (b) welche Schwächen dieser Aufbau hat, (c) eine bessere Lösung als Code.
Hinweis zur Musterlösung: Ihre bessere Lösung in Teil c weicht an einer Stelle von diesem Artefakt ab; mehr dazu in Schritt 11.
- Teil a: den Code Zeile für Zeile lesen, vom Klick bis zum Absenden.
- Teil b: die Seite mit den Augen eines Nutzers und eines Entwicklers prüfen.
- Teil c: die Schwächen aus b eine nach der anderen beheben.