0-løn Java script problem
Da vi nærmer os løn forhandlings tid (og da jeg er tillidsrepresentant) vil jeg gerne give mine kollegaer en ide om hvad firmaet syntes at de er værd. Til dette bruger jeg Forbrugerprisindekset (ja det er et ord). Koden har jeg skrevet i Java, men det kan ikke afvikles på firmaets maskiner (Java ikke installeret/spæret og låst så brugeren ikke kan ændre på det) derfor er jeg nu i gang med JavaScript (for første gang). Men jeg ved hvor det går galt. Det er min case (switch) sætning der altid ender i default.Hvorfor? jeg kan ikke selv finde fejlen!
Her under finder i hele koden (ser sikkert forfærdeligt ud når det er klippet ind her, men det er måden jeg kan gøre det på). Koden er komplet, med HTML tags og alt andet.
<html>
<body>
<FORM NAME="loen0">
<table>
<TR>
<TD COLSPAN=3>
<BIG>
<B>
Indtast Løn information:
</B>
</BIG>
</TD>
</TR>
<TR>
<TD>
1)
</TD>
<TD>
Indtast det årstal du startede i dit nuværende job:
</TD>
<TD>
<INPUT TYPE=text NAME=year SIZE=12 onChange="calculate()">
</TD>
</TR>
<TR>
<TD>
2)
</TD>
<TD>
Indtast din løn efter din første løn-diktat i dit nuværende job:
</TD>
<TD>
<INPUT TYPE=text NAME=loen SIZE=12 onChange="calculate()">
</TD>
</TR>
<TR>
<TD COLSPAN=3>
<BIG>
<B>
<INPUT TYPE=button VALUE="Udregn 0 løn" onClick=""calculate()">
</B>
</BIG>
</TD>
</TR>
<TR>
<TD>
3)
</TD>
<TD>
Din 0-løn er:
</TD>
<TD>
<INPUT TYPE=text NAME=loen1 SIZE=12>, <INPUT TYPE=text NAME=index1 SIZE=12>
</TD>
</TR>
</table>
</FORM>
<SCRIPT LANGUAGE="JavaScript">
function calculate()
{
var year = document.loen0.year.value;
var loen = document.loen0.loen.value;
switch(year)
{
case 1980:
var indeks = 45.3;
break;
case 1981:
var indeks = 51.2;
break;
case 1982:
var indeks = 55.9;
break;
case 1983:
var indeks = 59.8;
break;
case 1984:
var indeks = 63.9;
break;
case 1985:
var indeks = 67.0;
break;
case 1986:
var indeks = 69.7;
break;
case 1987:
var indeks = 72.0;
break;
case 1988:
var indeks = 75.3;
break;
case 1989:
var indeks = 78.7;
break;
case 1990:
var indeks = 80.7;
break;
case 1991:
var indeks = 83.0;
break;
case 1992:
var indeks = 85.0;
break;
case 1993:
var indeks = 85.7;
break;
case 1994:
var indeks = 87.5;
break;
case 1995:
var indeks = 89.3;
break;
case 1996:
var indeks = 91.1;
break;
case 1997:
var indeks = 93.3;
break;
case 1998:
var indeks = 94.9;
break;
case 1999:
var indeks = 97.2;
break;
case 2000:
var indeks = 100.4;
break;
default:
var indeks = 102.7;
break;
}
document.loen0.index1.value = indeks;
if ((year > 1979) && (year < 2001) && (loen != Number.POSITIVE_INFINITY) && (loen != Number.NEGATIVE_INFINITY))
{
document.loen0.loen1.value = ((102.7*loen)/indeks);
}
else
{
document.loen0.loen1.value = "";
}
}
</SCRIPT>
</body>
</html>
