JavaScript - Problema con javaScript

 
Vista:
sin imagen de perfil

Problema con javaScript

Publicado por Bryan (1 intervención) el 27/04/2017 07:55:35
Buenas, resulta que tengo un ejercicio sencillo pero no logro dar con la solución.
les planteo el problema:
crear una aplicación en js que reciba cantidad total de personas que asisten a un evento, valor publico general, cantidad de personas vip y el porcentaje de descuento para dichas personas. esto lo resolví de la siguiente manera:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<!DOCTYPE html>
<html>
<head>
	<title>Prueba 1 Desarrollo web</title>
	<script type="text/javascript" src="js/funciones.js"></script>
</head>
<body>
<h1>Recaudacion entradas</h1>
 
<form name="form_recaudacion">
 
		<label>Total Personas Asistidas</label>
		<input type="text" name="txt_total_asistidos" id="txt_total_asistidos" placeholder="Ingrese la cantidad de personas asistidas" onclick="limpiarCaja('txt_total_asistidos');">
<br>
		<label>Valor Entrada General</label>
		<input type="text" name="txt_valor_entrada_general" id="txt_valor_entrada_general" placeholder="Ingrese el Valor de la Entrada General" onclick="limpiarCaja('txt_valor_entrada_general');" >
<br>
		<label>Total Personas VIP</label>
		<input type="text" name="txt_total_vip" id="txt_total_vip" placeholder="Ingrese la cantidad de personas VIP"  onclick="limpiarCaja('txt_total_vip');" >
<br>
		<label>Descuento VIP</label>
		<input type="text" name="txt_descuento_vip" id="txt_descuento_vip" placeholder="Ingrese el porcentaje de descuento" onkeyup="calculo();" onclick="limpiarCaja('txt_descuento_vip');">
	</form>
		<div id="cnt_resultado">--------------</div>
 
</body>
</html>

Con estos datos debe calcular la cantidad de personas que asistieron con entrada general, el valor de la entrada vip con el descuento y la recaudación de las entradas general y vip, como también la recaudación final del evento.
Esto lo resolví así:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function calculo(){
	var personaEntradaGeneral 		= document.getElementById('txt_total_asistidos').value - document.getElementById('txt_total_vip').value;
	var valorEntradaVIP 			= document.getElementById('txt_valor_entrada_VIP').value * document.getElementById('txt_descuento_vip').value/100;
	var recaudacionEntradaGeneral	= personaEntradaGeneral * valorEntradaGeneral;
	var recaudacionEntradaVIP		= document.getElementById('txt_total_vip').value * valorEntradaVIP;
}
 
	document.getElementById('cnt_resultado').innerHTML = "La cantidad de personas que asistieron con entrada general " + recaudacionEntradaGeneral +
	<br> + " el valor de la entrada VIP es" + valorEntradaVIP + <br> + "la recaudacion para publico general es "+ recaudacionEntradaGeneral + <br> +
	"la recaudacion para publico vip es" + recaudacionEntradaVIP;
 
 
function limpiarCaja(elemento){
	var caja = elemento;
	document.getElementById(caja).value ='';
}

No se si aca estoy bien, pero no hace nada en el evento "onkeyup" si alguien seria tan amable de orientarme pls.
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 ab10
Val: 477
Bronce
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Problema con javaScript

Publicado por ab10 (130 intervenciones) el 28/04/2017 04:34:53
Hola Intenta con esto:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<!DOCTYPE html>
<html>
<head>
	<title>Prueba 1 Desarrollo web</title>
	<script type="text/javascript" src="js/funciones.js"></script>
</head>
<body>
    <h1>Recaudacion entradas</h1>
 
    <form name="form_recaudacion">
 
    		<label>Total Personas Asistidas</label>
    		<input type="text" name="txt_total_asistidos" id="txt_total_asistidos" placeholder="Ingrese la cantidad de personas asistidas" onclick="limpiarCaja('txt_total_asistidos');">
            <br>
    		<label>Valor Entrada General</label>
    		<input type="text" name="txt_valor_entrada_general" id="txt_valor_entrada_general" placeholder="Ingrese el Valor de la Entrada General" onclick="limpiarCaja('txt_valor_entrada_general');" >
            <br>
    		<label>Total Personas VIP</label>
    		<input type="text" name="txt_total_vip" id="txt_total_vip" placeholder="Ingrese la cantidad de personas VIP"  onclick="limpiarCaja('txt_total_vip');" >
            <br>
    		<label>Descuento VIP</label>
    		<input type="text" name="txt_descuento_vip" id="txt_descuento_vip" placeholder="Ingrese el porcentaje de descuento" onkeyup="calculo();" onclick="limpiarCaja('txt_descuento_vip');">
    	</form>
    		<div id="cnt_resultado">------------------</div>
     <script>
     function calculo(){
        var totalAsistidos = document.getElementById('txt_total_asistidos').value;
        var totalVIP = document.getElementById('txt_total_vip').value;
        var descuentoVIP = document.getElementById('txt_descuento_vip').value;
        var valorEntradaGeneral = document.getElementById('txt_valor_entrada_general').value;
 
        if (totalAsistidos && totalVIP && descuentoVIP) {
            var personaEntradaGeneral 		= totalAsistidos - totalVIP;
            var valorEntradaVIP 			= (valorEntradaGeneral * descuentoVIP) / 100;
            var recaudacionEntradaGeneral	= personaEntradaGeneral * valorEntradaGeneral;
            var recaudacionEntradaVIP		= totalVIP * valorEntradaVIP;
 
            document.getElementById('cnt_resultado').innerHTML = "La cantidad de personas que asistieron con entrada general " + personaEntradaGeneral + " <br>el valor de la entrada VIP es " + valorEntradaVIP + "<br>la recaudacion para publico general es "+ recaudacionEntradaGeneral + "<br> la recaudacion para publico vip es" + recaudacionEntradaVIP;
        }
    }
 
    function limpiarCaja(elemento){
    	var caja = elemento;
    	document.getElementById(caja).value ='';
    }
     </script>
</body>
</html>
</body>
</html>

Nos comentas.
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