Witajcie!
Jako że z JS jestem noga mam taki drobny problem.
Otóż mam funkcję:
function Godzina() {
var godzina = document.getElementById('dzien');
var wartgodz = document.getElementById('wartgodz');
switch (godzina.value) {
case '0' : wartgodz.innerHTML = 'Od godziny:
<select name="godzina" id="g1"><?php if($godzina_ustalona){$godzina_druga=$godzina_ustalona;}else{$godzina_druga=12;} if($godzina<6){$godzina=6;} for($go=($godzina+1);$go<=$godzina_druga;++$go){echo "<option value=\"$go.00\">$go:00
</option><option value=\"$go.30\">$go:30
</option>"; } ?>
</select><br>Do:
<select name="godzina2" id="g2"></select>';
document.getElementById('g2').innerHTML = '
<option value="<?php echo ($godzina+4);?>.00">
<?php echo ($godzina+4);?>:00
</option><option value="<?php echo ($godzina+4);?>.30">
<?php echo ($godzina+4);?>:30
</option><option value="<?php echo ($godzina+5);?>.00">
<?php echo ($godzina+5);?>:00
</option><option value="<?php echo ($godzina+5);?>.30">
<?php echo ($godzina+5);?>:30
</option><option value="<?php echo ($godzina+6);?>.00">
<?php echo ($godzina+6);?>:00
</option><option value="<?php echo ($godzina+6);?>.30">
<?php echo ($godzina+6);?>:30
</option>';
document.getElementById('g1').onchange = function(){
document.getElementById('g2').innerHTML = '
<option value="'+(parseInt(g1.value)+3)+'.00">'+(parseInt(g1.value)+3)+':00
</option><option value="'+(parseInt(g1.value)+3)+':00">'+(parseInt(g1.value)+3)+':30
</option><option>'+(parseInt(g1.value)+4)+':00
</option><option>'+(parseInt(g1.value)+4)+':30
</option><option>'+(parseInt(g1.value)+5)+':00
</option><option>'+(parseInt(g1.value)+5)+':30
</option>';}
break;
case 'wyb' : wartgodz.innerHTML = ''; break;
default : wartgodz.innerHTML = 'Od godziny:
<select name="godzina" id="g1"><?php if($godzina_ustalona){$godzina_druga=$godzina_ustalona;}else{$godzina_druga=18;} for($go=7;$go<$godzina_druga;++$go){ echo "<option value=\"$go.00\">$go.00
</option><option value=\"$go.30\">$go:30
</option>"; } ?>
</select><br>Do:
<select name="godzina2" id="g2"></select>';
document.getElementById('g1').onchange = function(){
document.getElementById('g2').innerHTML = '
<option value="'+(parseInt(g1.value)+3)+'.00">'+(parseInt(g1.value)+3)+':00
</option><option value="'+(parseInt(g1.value)+3)+':00">'+(parseInt(g1.value)+3)+':30
</option><option value="'+(parseInt(g1.value)+4)+':00">'+(parseInt(g1.value)+4)+':00
</option><option value="'+(parseInt(g1.value)+4)+':30">'+(parseInt(g1.value)+4)+':30
</option><option value="'+(parseInt(g1.value)+5)+':00">'+(parseInt(g1.value)+5)+':00
</option><option value="'+(parseInt(g1.value)+5)+':30">'+(parseInt(g1.value)+5)+':30
</option>';}
break;
}
}
No i na chrome wszystko pięknie chodzi, jednak na firefox wydaje się wczytywać tylko to pierwsze przypisanie
I nic sie nie zmienia pomimo zmiany formularzy, jak to zastąpić żeby od razu po załadowaniu pokazywała się ta domyślna opcja, a później żeby po prostu korzystało z funkcji która dodaje + 3 do godziny.
I drugie pytanie jak zrobić tak żeby np. jak ktoś wybierze godzinę 12:30 żeby w następnej ramce pokazywało mu 15:30 a nie 15:00 ?