Foros del Web » Programando para Internet » Javascript »

Problemas añadiendo/mostrando elementos a una lista

Estas en el tema de Problemas añadiendo/mostrando elementos a una lista en el foro de Javascript en Foros del Web. Hola a todos: Éste es mi primer mensaje en el foro, muchas gracias de antemano por la ayuda. Estoy haciendo una web simple, en la ...
  #1 (permalink)  
Antiguo 12/04/2010, 08:10
 
Fecha de Ingreso: abril-2010
Ubicación: L'Hospitalet de LLobregat
Mensajes: 43
Antigüedad: 14 años
Puntos: 0
Problemas añadiendo/mostrando elementos a una lista

Hola a todos:

Éste es mi primer mensaje en el foro, muchas gracias de antemano por la ayuda.
Estoy haciendo una web simple, en la que quiero ir añadiendo "productos" a una lista de la compra. Hasta ahora lo tenía montado que al introducir lo que desearas en un campo de texto y clicar al boton añadir, te lleva a una función donde me creaba un nuevo párrafo con ese producto y al terminar hay un botón terminar que te lleva a otra función donde junta todos esos productos y los muestra por una alerta.

Código HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/
xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
<link rel="stylesheet" type="text/css" href="estilos.css" media="screen" />
<script type="text/javascript" src="codigo2.js"></script>
<title>Lista de la compra</title>
</head>


<body>
<noscript>
  <p>Bienvenido a lista de la compra</p>
  <p>La pagina que estas viendo requiere para su funcionamiento el uso de JavaScript.
Si lo has deshabilitado intencionadamente, por favor vuelve a activarlo.</p>
</noscript>
<h1>Aplicacion para realizar la lista de la compra</h1>
<p><b>Bienvenido,</b></p> 
<p>Estas en la pagina <b>Lista de la compra</b>.</p> 
<p>Introduce los productos que deseas añadir al carro de la compra: </p>
<p>Una vez finalizado, dale al boton TERMINAR </p>
<form name="formulario" id="formulario" >
	<input type="text" name="elemento" id="texto" />
</form>


<input type="submit" value="Añadir" onclick="otroElemento()">

<input type="submit" value="TERMINAR" onclick="presentacion()">

<UL>
<LI>Productos que se desean añadir al carrito de la compra:


</body>
</html> 
Código Javascript:
Ver original
  1. function otroElemento() {
  2.     var valor = document.getElementById("texto").value;
  3.     var primerElemento = document.formulario.elemento;
  4.     // Crear nodo de tipo Element
  5.     var parrafo = document.createElement("p");
  6.     // Crear nodo de tipo Text
  7.     var contenido = document.createTextNode(valor);
  8.     // Añadir el nodo Text como hijo del nodo Element
  9.     parrafo.appendChild(contenido);
  10.     // Añadir el nodo Element como hijo de la pagina
  11.     document.body.appendChild(parrafo);
  12.     var valor = document.getElementById("texto").value="";
  13. }
  14.  
  15. function presentacion() {
  16.     var parrafos = document.getElementsByTagName("p");
  17.     var parrafo = "A continuacion se muestra su lista de la compra: ";
  18.     for(var i=4; i<parrafos.length; i++) {
  19.         var parrafo = parrafo + "  " + parrafos[i].innerHTML;
  20.     }
  21.     alert(parrafo);
  22. }


Pero me gustaría que en vez de añadir párrafos, añadiera elementos a una lista desordenada (la que he comenzado, por ejemplo) y después en vez de mostrarlos en una alerta, mostrar la lista entera en otra página. La cuestión es que no se me ocurre como.

Muchas gracias de nuevo, un saludo a todos.
  #2 (permalink)  
Antiguo 12/04/2010, 08:39
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Problemas añadiendo/mostrando elementos a una lista

Hola

Lo que puedes hacer es crear una matriz y irle añadiendo valores. Para ellos usa la función push()
En cuanto a ver esos elementos en otra página, has de usar location.href, apuntando hacia la página que quieres abrir. A esa url le añades los valores de la matriz. En la página que recibe los valores, los puedes sacar con location.search.substr(1)

Edito; 20:46
Releyendo, en vez de usar lo que te he marcado en negrita, también puedes recoger los valores de la manera habitual $_GET o Request.QueryString (del lado del servidor) o con window.location.hash

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />

Última edición por Adler; 12/04/2010 a las 12:47
  #3 (permalink)  
Antiguo 13/04/2010, 09:18
 
Fecha de Ingreso: abril-2010
Ubicación: L'Hospitalet de LLobregat
Mensajes: 43
Antigüedad: 14 años
Puntos: 0
Respuesta: Problemas añadiendo/mostrando elementos a una lista

Muchas gracias por la ayuda, al final lo he echo en forma de tabla:

Código Javascript:
Ver original
  1. function otroElemento2(array) {
  2.     var valor = document.getElementById("texto").value;
  3.     var capa = document.getElementById("capa");
  4.     var LI = document.createElement("LI");
  5.     LI.innerHTML = valor;
  6.     capa.appendChild(LI);
  7.     var valor = document.getElementById("texto").value="";
  8. }

Código HTML:
<form name="formulario" id="formulario" >
	<input type="text" name="elemento" id="texto" />
</form>

<input type="submit" value="Añadir" onclick="otroElemento2()">

<input type="submit" value="TERMINAR" onclick="presentacion2()">

<p>Productos añadidos:
<UL id="capa">
</UL> 
Pero no me queda claro como pasar la tabla resultante a otra página (por ejemplo con la función que he llamado presentacion2() para mostrarla tal cual (en forma de tabla desordenada).

Un saludo!

Etiquetas: elementos, lista
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:42.