Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/04/2010, 10:49
galorn
 
Fecha de Ingreso: abril-2010
Ubicación: L'Hospitalet de LLobregat
Mensajes: 43
Antigüedad: 14 años
Puntos: 0
Pregunta Problemas al crear lista e introducir info

Hola a todos:

Estoy intentando crear una lista UL para ponerla despues de un parrafo en concreto con id "parrafo" desde javascript y no lo consigo.

Código Javascript:
Ver original
  1. var listaGeneral = new Array();
  2. var numProductos=0;
  3. var control=0;
  4.  
  5. function Producto(nombre) {
  6.     this.nombre = nombre;
  7. }
  8.  
  9. //funcion que añade un producto a la lista y manda a la funcion print
  10. //ESTO VA BIEN
  11. function addProduct(){
  12.     var valor = document.getElementById("texto").value;
  13.     listaGeneral[numProductos]=new Producto(valor);
  14.     numProductos=numProductos+1;
  15.     print();
  16.  
  17. }
  18.  
  19. //funcion que printa en la web (genera codigo html) de los productos añadidos
  20. //reescribe los datos que anteriormente hubiera
  21. function print(){
  22.     if (control>0){
  23.         // Obtenemos el elemento
  24.         var capaAux = document.getElementById("capa");
  25.         // Obtenemos el padre de dicho elemento
  26.         // con la propiedad “parentNode”
  27.         var padre = capaAux.parentNode;
  28.         // Eliminamos el hijo (él) del elemento padre
  29.         padre.removeChild(capaAux);
  30.     }
  31.     control=control+1;
  32.    
  33.     //volvemos a crear la lista con el mismo id
  34.         //NO FUNCIONA
  35.     var parrafoAux = document.getElementById("parrafo");
  36.     var UL = document.createElement("UL");
  37.     UL.id=”capa”;
  38.     parrafoAux.appendChild(UL);
  39.     alert("putamierda");
  40.    
  41.     //rellenamos la lista entera al completo
  42.     for (var i=0; i<(numProductos+1); i++){
  43.         var texto = listaGeneral[i].nombre;
  44.         alert(listaGeneral[i].nombre);
  45.         var capa = document.getElementById("capa");
  46.         var LI = document.createElement("LI");
  47.         LI.innerHTML = texto;
  48.         capa.appendChild(LI);
  49.     }
  50.     var texto = document.getElementById("texto").value="";

Los datos se que me los coge bien del array listaGeneral por distintas pruebas que he echo. También he probado de poner la lista UL directamente en el codigo html, pero entonces lo que hace es ir agregando los datos que voy introduciendo cada vez desde 0 (cuando yo quiero que me borre la lista anterior y la vuelva a printar entera).

Muchas gracias por la ayuda, un saludo!