Código:
<script language="JavaScript">
function calcula(){
var val1, val2, res
val1 = document.frm.ope1.value;
val2 = document.frm.ope2.value;
if (isNaN(val1)) val1 = 0;
if (isNaN(val2)) val2 = 0;
res = val1 - val2;
document.frm.res.value = res;
}
</script>
</head>
<body>
<form name="frm">
<input type="text" id="ope1" name="ope1" onkeyup="calcula()">
<input type="text" id="ope2" name="ope2" onkeyup="calcula()">
=
<input type="text" name="res">
Lo que pasa es que utilizas parseInt(), y este convierte a Integer los numeros sin decimales, por lo que si escribes:
20.345 (recuerda que es con PUNTO(.), no con COMA(error comun))
al hacer:
parseInt(20.345)
Obtendras:
20