Ver Mensaje Individual
  #4 (permalink)  
Antiguo 29/01/2018, 19:00
Avatar de manuparquegiralda
manuparquegiralda
 
Fecha de Ingreso: junio-2012
Ubicación: Barcelona
Mensajes: 241
Antigüedad: 11 años, 9 meses
Puntos: 39
Respuesta: calcular porcentaje no me carga (NaN)

A ver, te cuento, llamas a la función total() cuando cambia el campo "dividendo" y cuando quitas el Focus del campo porcentaje. El problema es que cuando cambias el campo "dividendo" aún no has rellenado el campo "porcentaje". Cómo haces un parseInt de un valor vacío te devuelve NaN. Antes de ejecutar la función parseInt tienes que asegurarte que ambos campos están rellenos con valores numéricos.

Para hacerlo puedes hacer una comprobación en JavaScript de modo que si no hay valor retorne.

Para asegurarte que sean números puedes utilizar el input[type=number] de HTML5.

Por otro lado, en el campo "porcentaje" en el evento on-blur haces mención a this.form, pero no hay ningún formulario en el HTML.

El atributo required solo funciona si los campos están dentro del formulario y solo evita que se envié el formulario si no están todos los campos completados. Igual para el atributo pattern. Los atributos de validación solo funcionan dentro de formularios.

Dale una vuelta al código que la verdad es que está regular, aprovecha más el JavaScript y vacía un poco el HTML con la función addEventListener de JavaScript.

Y como consejo estudia la PPOO y las clases de ECMA6, te van a facilitar mucho la vida a la larga y te van a limpiar mucho el código.

Un saludo.
__________________
Diseño Web - Arisman Web