Foros del Web » Programando para Internet » Javascript »

problema con array bidimensional

Estas en el tema de problema con array bidimensional en el foro de Javascript en Foros del Web. hola a tod@s, tengo el siguiente código: Código: var uni_1_temas = new Array( ["Sintaxis Básica","Prog001"], ["Interacción con los datos en Javascript","Prog002"], ["Uso práctico de alert() ...
  #1 (permalink)  
Antiguo 23/09/2010, 12:22
 
Fecha de Ingreso: marzo-2006
Mensajes: 75
Antigüedad: 18 años, 1 mes
Puntos: 1
Pregunta problema con array bidimensional

hola a tod@s, tengo el siguiente código:


Código:
var uni_1_temas = new Array(
	["Sintaxis Básica","Prog001"], 
	["Interacción con los datos en Javascript","Prog002"],
	["Uso práctico de alert() y prompt()","Prog003"]
	["Declaraciones, variables Explicitas e Implicitas","Prog004"], 
	["Tipos de variables","Prog005"],
	["Sumar string escritos por el usuario","Prog007"],	
	["Suma de números en javascript","Prog010"]
	);

var uni_2_temas = new Array(
	["Estructura If-Else","Prog013"], 
	["If-Else, comparaciones","Prog014"],
	["Bucle For, estructura","Prog015"]
	["Bucle While, estructura","Prog016"], 
	["Comparación","Prog016b"],
	["document.write()","Prog017"],	
	["document.write(), para HTML","Prog018"],
	["document.write(), y HTML","Prog019"], 
	["Retorno de valores con funciones","Prog020"],
	["Ejemplos de funciones","Prog021"],	
	["Hallar números pares","Prog022"],
	["Arrays","Prog023"],
	["document.write() para HTML","Prog055"],	
	["document.write()","Prog056"],
	["document.write() para HTML","Prog057"]
	);

var listado_temas = new Array(uni_1_temas, uni_2_temas);

function navegar(id){
	var div = id;
	//averiguamos que seccion hemos pulsado y lo adaptamos para que llame a su array correspondiente 
	var unidad = div.substring(4,5)-1;
	var tema = listado_temas[unidad];
	if(div != seccion){
		//deseleccionamos la sección antigua
		document.getElementById(seccion).className = "";
		//seleccionamos la sección nueva para que se ponga en estado de pulsado
		document.getElementById(div).className = "pulsado";
		//cambiamos la clase de la caja para que tenga el color que le corresponde
		document.getElementById('caja_slide').className = div;
		//determinamos cual es la sección actual
		seccion = div;
			
		//detectamos cuantos temas tiene la seccion puslada
		var num_temas = tema.length;
		//construimos listado con los temas
		var contenido="";
		var contador = 1;
		for(i=0;i<num_temas;i++){
			contenido += "<li><a id='"+tema[i][1]+"' href='javascript:void(0);'><span class='bold'>"+contador+".</span><br /><span class='bold'>"+tema[i][0]+"</span><br /><br />"+tema[i][1]+"</a></li>";
			contador ++;
		}
	}
}
El caso es que tengo un array, que contiene a su vez otro array con dos campos. Dicho array lo llamo desde la función navegar para rellenar un campo ul con sus respectivos li, que sería la estructura que tengo dentro del for.

El problema es que me dice que por ejemplo, dentro del for, tema[i][0] no esta definido, con lo que no me hace el for. Pero si pongo un alert de ejemplo y escribo alert(tema[0][1]) si que me saca el dato del array que quiero, yo lo unico que intento es que el primer indice del array tema lo ponga la i del for, para que así vaya leyendo todo el array.

Alguna sugerencia?
  #2 (permalink)  
Antiguo 23/09/2010, 13:48
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: problema con array bidimensional

el problema debe ser que en los dos array te falto una coma, especificamente para definir el tercer elemento.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 23/09/2010, 13:52
 
Fecha de Ingreso: marzo-2006
Mensajes: 75
Antigüedad: 18 años, 1 mes
Puntos: 1
Respuesta: problema con array bidimensional

que triste.... creo que estoy 3 horas más y ni me doy cuenta...

Gracias, ahora ya funciona!!!

Etiquetas: bidimensionales
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 20:28.