Hallo,
ich möchte gern nach zweifacher Auswahl, das der richtige Preis erscheint:
<script type="text/javascript">
function Preis() {
size = document.Pizza.Size1.value;
name = document.Pizza.Sorte1.value;
hier fallen zwei Dinge unangenehm auf:
Erstens sind die Variablen size und name, die du hier verwendest, global. Das ist nicht schön. Mit dem Keyword var vorangestellt deklarierst du sie als lokale Variablen.
Zweitens bin ich nicht sicher, ob der gewählte Bezeichner 'name' hier nicht vielleicht mit der gleichnamigen Eigenschaft diverser HTML-Elementobjekte kollidiert (z.B. window.name). Ich würde dir auf jeden Fall raten, einen anderen Bezeichner zu nehmen.
Zum restlichen Code fallen mir nur noch ein paar kosmetische Dinge auf. Zum Beispiel setzt du die Preise bei der 18cm-Pizza als Strings - das ist korrekt, weil die value-Eigenschaft der inputs sowieso ein String ist. Bei der 28cm-Pizza setzt du sie aber als Zahlenwert und überlässt es Javascript, sie automatisch in Strings umzuwandeln. Dabei wird 5.40 natürlich als 5.4 angezeigt.
Im HTML-Teil gefällt mir nicht, dass die Attributnamen teils in einem Mix aus Groß- und Kleinschreibung und die Attributwerte teilweise ohne Anführungszeichen notiert sind. Beides ist in HTML erlaubt (in XHTML nicht), aber trotzdem wird empfohlen, Attributnamen konsequent kleinzuschreiben, und Attributwerte immer in Anführungszeichen zu setzen, auch da, wo es nicht unbedingt notwendig ist.
So long,
Martin
--
Lache, und die Welt wird mit dir lachen.
Schnarche, und du schläfst allein.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(