eso es por que toma el texto como cadena y no como valor....... ps para eso existe la funcion
eval.
ahora, lo mejoras si validas que cuando no sea un numero (ya sea letra o este vacio) con la funcion
isNaN, y ps le das un valor por defecto, como los que he puesto ahi.
Código html:
Ver original<input type="text" name="alto" value="1" onkeyup="actualiza()" /> <input type="text" name="ancho" value="1" onkeyup="actualiza()" /> <input type="text" name="largo" value="1" onkeyup="actualiza()" /> <input type="text" name="suelto" value="0" onkeyup="actualiza()" /> <input type="text" name="total" value="1" readonly="readonly" />
function actualiza(){
alto = eval(form.alto.value);
ancho = eval(form.ancho.value);
largo = eval(form.largo.value);
suelto = eval(form.suelto.value);
if(isNaN(alto)) alto = 1;
if(isNaN(ancho)) ancho = 1;
if(isNaN(largo)) largo = 1;
if(isNaN(suelto)) suelto = 0;
form.total.value = alto * ancho * largo + suelto;
}
Un gusto ayudarte.
espero ese karma ps......... =P
Suerte y cuando desees.