Drop Down, vælg og valget styrer hvad du må
I fortsættelse af spørgsmål 679873 har jeg et par yderligere ønsker:1. Når der vælges "Rengøring" i Drop Down, vil jeg gerne have kontrol på, at timer og minutter udfyldes. Minutter må kun udfyldes med 00,15,30 eller 45. Er det smartest med en Drop Down? og hvis ja, hvordan laver jeg den rigtigt?
2. Når der vælges alt anden end "Rengøring" i Drop Down, vil jeg gerne, at der ikke indtastes timer og minutter. Helst så det slet ikke kan lade sig gøre, men alternativt en kontrol på, at timer og minutter er sat til 0.
Tjek evt. siden www.vardeborg.dk/koersel/koerselsregnskab_indtastning.php
Koden ser sådan her ud nu:
<head>
<script type="text/javascript">
function checkDate(elm){
elm.value = elm.value.replace(/\//g,"-");
var d = elm.value.split("-");
if(d.length < 3){
alert("Fejl i datoformat");
return false;
}
var dato = new Date(d[2],d[1]-1,d[0]);
if(dato.getFullYear() != d[2] || dato.getMonth()+1 != d[1] || dato.getDate() != d[0]){
alert("Ugyldig dato");
return false;
}
return true;
}
function valider(f){
if(!checkDate(f.dato)){
f.dato.select();
f.dato.focus();
return false;
}
if(!f.antal_km.value.match(/^\d{1,3}$/)){
alert("Kilometertal skal udfyldes med et helt tal under 1000");
f.antal_km.select();
f.antal_km.focus();
return false;
}
if(f.formaal.value==""){
alert("Formål skal udfyldes");
f.formaal.select();
f.formaal.focus();
return false;
}
if(f.destination_fra.value==""){
alert("Fra destination skal udfyldes");
f.destination_fra.select();
f.destination_fra.focus();
return false;
}
if(f.destination_til.value==""){
alert("Til destination skal udfyldes");
f.destination_til.select();
f.destination_til.focus();
return false;
}
return true;
}
var udfyld = [
{"antal_km":"25","timer":"0","min":"00","formaal":"Ordinært Tilsyn","destination_fra":"Vestparken 35, Oksbøl","destination_til":"Vardeborg og retur"},
{"antal_km":"25","timer":"0","min":"00","formaal":"Ekstraordinært Tilsyn","destination_fra":"Vestparken 35, Oksbøl","destination_til":"Vardeborg og retur"},
{"antal_km":"25","timer":"","min":"","formaal":"Rengøring","destination_fra":"Vestparken 35, Oksbøl","destination_til":"Vardeborg og retur"},
{"antal_km":"32","timer":"0","min":"00","formaal":"Indkøb","destination_fra":"Vestparken 35, Oksbøl","destination_til":"PC Trading, Varde"},
{"antal_km":"","formaal":"","destination_fra":"","destination_til":""}
]
function udfyldFelter(sel){
if(sel.selectedIndex == 0){
alert("Du skal vælge tilsyns-type");
return false;
}
var f = sel.form;
for(x in udfyld[sel.selectedIndex-1]){
f.elements[x].value = udfyld[sel.selectedIndex-1][x];
}
}
window.onload = function(){
document.forms[0].tilsynType.focus();
}
</script>
</head>
<body background="fdfbaggrund.gif">
<p><b><font face='Verdana' size='5'>Indtast Kørsel og rengøring</font></b><br><br></p>
<form action="koersel_gemmes.php" method="post" onsubmit="return valider(this);">
<table>
<tr>
<td>Vælg type:<br></td>
<td><select name="tilsynType" onchange="udfyldFelter(this);">
<option>--Vælg på listen--</option>
<option value="ordinært">Ordinært Tilsyn</option>
<option value="Ekstraordinært">Ekstraordinært Tilsyn</option>
<option value="Rengøring">Rengøring</option>
<option value="Indkøb">Indkøb PC Trading</option>
<option value="Manuel">Manuel indtastning</option>
</select></td>
</tr>
<tr>
<td>Dato:<br></td>
<td><input type="text" name="dato" size="10" onkeyup="val=this.value.replace(/[\/-]/g,'');if(val.match(/\d{8}/) && checkDate(this)){this.form.antal_km.focus()}else{this.focus()};"> (dd-mm-åååå)</td>
</tr>
<tr>
<td>Antal kilometer:</td>
<td><input type="text" name="antal_km" size="4" maxlength="3" onblur="if(this.value=='' && this.form.dato.value!='')this.focus();"></td>
</tr>
<tr>
<td>Tid Rengøring:</td>
<td><input type="text" name="timer" size="1" maxlength="1"> Timer <input type="text" name="min" size="2" maxlength="2">minutter (00,15,30,45)</td>
</tr>
<tr>
<td>Formål med kørslen:</td>
<td><input type="text" name="formaal" size="50"></td>
</tr>
<tr>
<td>Fra destination: </td>
<td><input type="text" name="destination_fra" size="50"></td>
<tr>
</tr>
<td>Til destination: </td>
<td><input type="text" name="destination_til" size="50"></td>
<tr>
<td></td><td><input type="submit" value="Gem indtastning"></td>
</tr>
</table>
</form>
<br><br>
<button onclick="location.href='koersel_menu.htm';return false;">Tilbage til Menu</button>
</body>
