JavaScript - nuevos elementos con el método push solo funciona la primera vez

 
Vista:
sin imagen de perfil
Val: 27
Ha aumentado su posición en 4 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

nuevos elementos con el método push solo funciona la primera vez

Publicado por diego (27 intervenciones) el 13/02/2017 19:31:13
Estoy realizando una agenda en javascript y añado los nuevos elementos con el metodo push.
El problema está en que solo me almacena los datos la primera vez , las posteriores veces que aplico la función agregar contacto ya no me almacena os datos y claro está tampoco lo saca por pantalla.
he visto por ahí como se pude hacer pero no es con el método push, dejo el código ppr si alguien me podría orientar un poco:

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
51
52
53
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<script>
	var contactos= [];
	function agregarContacto(){
		nombre = prompt ("digite el nombre");
		contactos.push(nombre);
		telefono = prompt ("digite el telefono");
		contactos.push(telefono);
		email = prompt ("digite el email");
		contactos.push(email);
		direccion = prompt ("digite la direccion");
		contactos.push(direccion);
 
		/*contactos[contactos.length] = new Array(nombre,telefono,email,direccion);*/
		mostrarContactos();
	}
	function mostrarContactos(){
		destino=document.getElementById("divdestino");
		contenido="";
		contenido= contenido + "<div>" +contactos[0]+" " +contactos[1]+" "+contactos[2]+" " +contactos[3]+"</div>"
 
		/*for(i=0;i<contactos.length;i++){
		/*nombre=contactos[i][0];
		telefono=contactos[i][1];
		email=contactos[i][2];
		direccion=contactos[i][3];*/
 
			/*contenido= contenido + "<div>" +nombre+" " +telefono+" "+email+" " +direccion+"</div>"*/
		/*}*/
		destino.innerHTML=contenido;
	}
 
 
	</script>
</head>
<body>
	<div>
		<button onclick="agregarContacto();">Agregar contacto</button>
 
	</div>
	<fieldset>
		<legend>Contactos en la agenda</legend>
	</fieldset>
	<div id="divdestino">
 
	</div>
 
</body>
</html>
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 xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

nuevos elementos con el método push solo funciona la primera vez

Publicado por xve (2100 intervenciones) el 13/02/2017 20:53:02
Hola Diego, tu problema es a la hora de mostrar el resultado... el array si se crea correctamente!!!

Cambia tu función mostrarContactos() por esta:
1
2
3
4
5
6
7
8
9
10
11
function mostrarContactos(){
	destino=document.getElementById("divdestino");
	contenido="<div>";
	for(var i=0;i<contactos.length;i++)
	{
		if(i%4==0)
			contenido=contenido+"</div><div>";
		contenido=contenido+contactos[i];
	}
	contenido=contenido+"</div>";
}

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 27
Ha aumentado su posición en 4 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

nuevos elementos con el método push solo funciona la primera vez

Publicado por diego (27 intervenciones) el 14/02/2017 14:27:44
perfecto gracias de este modo lo compredo mejor.
De nuevo gracias
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
Val: 27
Ha aumentado su posición en 4 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

nuevos elementos con el método push solo funciona la primera vez

Publicado por diego (27 intervenciones) el 14/02/2017 14:58:59
ahora debo aprender a susitituir y borrar elementos de esos arrays ,
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