Utilizar solo
isNaN para hacer una comprobación no es la mejor forma debido a que puede producirse (en este caso siempre) una conversión de tipos... Yo siempre lo hago de dos formas:
Código Javascript
:
Ver originalvar value = document.getElementById('p1' + i).value;
if(isNaN(parseFloat(value)) || isNaN(Number(value)))
document.getElementById('p1' + i).value = 0;