JavaScript - JS funcion que concatena en vez de sumar

 
Vista:
Imágen de perfil de Claudio
Val: 18
Ha aumentado su posición en 7 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

JS funcion que concatena en vez de sumar

Publicado por Claudio (8 intervenciones) el 27/05/2015 19:38:27
Hola que tal.

Necesito un poco de ayuda, la verdad es que no entiendo mucho de JS.

Tengo una función para calcular el iva y el total del valor neto, pero no puedo hacer que sume el neto con el iva que ya fue calculado, me entrega el valor concatenado, ejemplo:
Ingreso el valor 11765 como valor neto me muestra el iva 2235 y en el total me muestra 117652235.35, osea los 2 valores concatenados, dejo el código para ver si alguien de buena voluntad me puede ayudar con este inconveniente:

formulario html:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<html>
    <body onload="calcularIva">
        <form name="form1" action="" method="post">
            <input type="hidden" name="iva" value=.19 onchange="calcularIva()">
            <table cellpadding=1 border=1 cellspacing=1>
                <tr>
                    <td>NETO</td>
                    <td>IVA</td>
                    <td>TOTAL</td>
                </tr>
                <tr>
                    <td><input type="text" name="neto" onchange="calcularIva()"></td>
                    <td><input type="text" name="valiva" readonly></td>
                    <td><input type="text" name="valtotal" readonly></td>
                </tr>
            </table>
        </form>
    <script src="funciones.js"></script>
</body>

y la funcion js
1
2
3
4
5
function calcularIva()
{
document.form1.val_iva.value = (document.form1.val_neto.value)*(document.form1.porcentaje.value)
document.form1.val_total.value = (document.form1.val_neto.value)+(document.form1.val_iva.value)
}

De antemano muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Enrique

JS funcion que concatena en vez de sumar

Publicado por Enrique (22 intervenciones) el 28/05/2015 02:51:42
en lugar de poner type="text" pon type="number"
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Claudio
Val: 18
Ha aumentado su posición en 7 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

JS funcion que concatena en vez de sumar

Publicado por Claudio (8 intervenciones) el 28/05/2015 15:59:06
Gracias Enrique por tu respuesta,

Hice lo que me recomiendas y todo sigue igual
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Vainas
Val: 95
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

JS funcion que concatena en vez de sumar

Publicado por Vainas (258 intervenciones) el 28/05/2015 20:36:36
Buenas:

Piensa de este modo: Tu piensas que el usuario introduce un numero, cierto? pero que piensa la maquina que el usuario esta introduciendo? Pues piensa que es una cadena o string y los string se concatenan.

Tendras que pasar lo que introduce el usuario a entero o numero real, como? parseInt http://www.w3schools.com/jsref/jsref_parseint.asp

funtion js
1
2
3
4
5
function calcularIva()
{
document.form1.val_iva.value = (parseInt(document.form1.val_neto.value))*(parseInt(document.form1.porcentaje.value));
document.form1.val_total.value = (parseInt(document.form1.val_neto.value))+(parseInt(document.form1.val_iva.value));
}

En realidad deberias comprobar primero que introduce un numero por que sino te podria dar como resultado NaN.

Espero que te sirva.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

JS funcion que concatena en vez de sumar

Publicado por dannia (1 intervención) el 29/05/2015 00:15:10
Hola me parece muy buena información, me gusta aprender sobre la programación es muy interesante cada día se aprenden cosas nuevas.
Saludos!!
__________________
Feliz trabajando para Yanbal
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar