<body>
<form name="wecker" method="post" action="">
<select name="stunden">
<script type="text/javascript">
var i = 0;
var b = 0;
do
{
if (i <= 9){b="0"+i;}
else{b=i;}
sieht besser aus:
b = i < 10 ? '0' + i : i;
document.write('<option value="'+i+'">'+b+'</option>');
i = i + 1;
i++;
}
while (i < 24);
und warum du hier ein do ... while schleife verwendest ist mir schleierhaft.
for(var i = 0; i < 25;i++)
{
...
}
ist dafür gebräuchlicher.
eigentlich kannst du alles mit JS ausgeben, so wundern sich die Besucher, die JS abgeschaltet haben, nicht das da etwas ist, was sie nicht benutzen können.
<input type="submit" name="Submit" value="Senden" onClick="rechnen(wecker.stunden.value, wecker.minuten.value)">
Das ist falsch.
Ein select hat kein value. Wie du auf den wert zugreifst: http://selfhtml.teamone.de/javascript/objekte/options.htm
Du kannst hier mit this arbeiten, da deine Schreibweise in den meisten Browsern zu Problemen führen kann. es ist nicht klar, welches Objekt 'wecker' du ansprechen möchtest.
<input type="submit" name="Submit" value="Senden"
onClick="rechnen(this.form.stunden[this.form.stunden.selectedIndex].value, this.form.minuten[this.form.minuten.selectedIndex].value);">
function rechnen(stunden, minuten)
{
weckhrs = Number(stunden)
weckmins = Number(minuten);
document.getElementByID("weckzeit").innerHTML = (weckhrs + ":" + weckmins);
ausser den uberflüssigen Klammern ist das korrekt.
Struppi.