Hola
Sir Matrix
Prueba llamando solo a la función validar() y desde la función validar llamas a calculatotal()
Código:
function validar(e) {
//valida que sólo ingresen números
tecla = (document.all) ? e.keyCode : e.which;
if (tecla==8) return true; //Tecla de retroceso (para poder borrar)
patron = /[\d.]/; // Solo acepta números
te = String.fromCharCode(tecla);
if (patron.test(te)) {
calculatotal();
return true;
}
else
return false;
}
Espero que te sirva. Saludos,