Foros del Web » Programando para Internet » Javascript »

tabla dinamica con javascript

Estas en el tema de tabla dinamica con javascript en el foro de Javascript en Foros del Web. hola comunidad tengo un problema quiero hacer una funcion javascript que me permita crear una tabla, como parametro de la funcion quiero pasarle la cantidad ...
  #1 (permalink)  
Antiguo 08/11/2010, 20:37
 
Fecha de Ingreso: marzo-2009
Mensajes: 155
Antigüedad: 15 años, 2 meses
Puntos: 1
tabla dinamica con javascript

hola comunidad tengo un problema quiero hacer una funcion javascript que me permita crear una tabla, como parametro de la funcion quiero pasarle la cantidad de columnas que va a tener y el nombre que tendra cada una, quiero que sea como un objeto tabla que se le pasa un array qe contiene los nombres de las columnas que va ha tener como puedo hacer esto, agradecere cualquier ayuda

saludos manuelle
  #2 (permalink)  
Antiguo 08/11/2010, 20:58
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: tabla dinamica con javascript

hasta el momento, ¿que tienes hecho? cuando dices el nombre de la columna, a que te refieres... ¿un label o texto para identificar las columnas? como guia, la funcion pudiera aceptar dos parametros: el array de label y un parametro opcional para indicar la cantidad de filas de la tabla. la cantidad de columna se determinaria por la longitud del array. luego seria cuestion de recorrer el array para ir creando las celdas de la tabla. para ello, seria apropiado usar las funciones del DOM para crear la tabla. en los siguientes enlaces tienes las funciones DOM para manipular o crear tablas.
http://www.w3schools.com/jsref/dom_obj_table.asp
http://www.w3schools.com/jsref/dom_obj_tablerow.asp
http://www.w3schools.com/jsref/dom_obj_tabledata.asp
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 09/11/2010, 04:06
Avatar de stock  
Fecha de Ingreso: junio-2004
Ubicación: Monterrey NL
Mensajes: 2.390
Antigüedad: 19 años, 10 meses
Puntos: 53
Respuesta: tabla dinamica con javascript

Mira, yo he creado un componente que me crea una tabla dinámicamente, para usarla simplemente hago lo siguiente:

Código Javascript:
Ver original
  1. var grid = new App.Grid({
  2.    id : "ejemplo",
  3.    columns : [
  4.       {header:"Nombre",dataIndex:"name",sortable:true},
  5.       {header:"Apellido",dataIndex:"lastname",sortable:true},
  6.       {header:"Edad",dataIndex:"age",sortable:true},
  7.       {header:"Email",dataIndex:"email",sortable:true}
  8.    ],
  9.    stripeRows : true
  10. });
  11.  
  12. grid.render("idDeUnElemento");
  13.  
  14. grid.load({
  15.    url  : "serverside/cargarInformacion.php"
  16. });

El JSON que regresa el servidor con la información a desplegar en el body sería algo así:

Código Javascript:
Ver original
  1. [
  2. {name:"Crysfel",lastname:"Villa",age:"26",email:"[email protected]"},
  3. {name:"John",lastname:"Doe",age:"26",email:"[email protected]"},
  4. {name:"Sasha",lastname:"Cohen",age:"26",email:"[email protected]"}
  5. ]

Si a algo así te refieres vas por buen camino! la idea es reutilizar componentes, hacerlos una sola vez y permitir crear nuevos con diferentes configuraciones.

Ahora, la parte interesante viene al hacer el componente, primero debes tener buenos conocimientos de POO, conceptos fundamentales de JavaScript, como es el scope, closures, eventos, etc..., el código que tengo del componente que te comento es semejante al siguiente:


Código Javascript:
Ver original
  1. var App = {};
  2.  
  3. App.Grid = function(config){
  4.  
  5.     //aplicar las configuraciones al objeto
  6.  
  7.     //crear la tabla
  8.     this.createHeader();
  9.     this.createBody();
  10.  
  11.     //si el usuario lo configura se renderiza la tabla desde el inicio
  12.     if(this.renderTo){
  13.         //ejecutar método render...
  14.     }
  15.  
  16.     //se realiza la petición ajax si se configura el autoLoad = true
  17.     if(this.autoLoad){
  18.        this.load(config.url);
  19.     }
  20. }
  21.  
  22. App.Grid.prototype = {
  23.     renderTo : false,
  24.     autoLoad: false,
  25.  
  26.     render  : function(where){
  27.  
  28.     },
  29.  
  30.     createHeader : function(){
  31.  
  32.     },
  33.  
  34.     load  : function(url){
  35.        
  36.     }
  37. }

Mas o menos así es como lo tengo, te he dado una idea.

Saludos

Etiquetas: dinamica, tablas
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 17:23.