Foros del Web » Programando para Internet » Javascript »

ocucltar div

Estas en el tema de ocucltar div en el foro de Javascript en Foros del Web. hola: En primer lugar deciros que no tengo mucha idea de javascript. Como resultado de una consulta a la bd obtengo una serie de div ...
  #1 (permalink)  
Antiguo 26/06/2012, 03:44
 
Fecha de Ingreso: enero-2008
Mensajes: 303
Antigüedad: 16 años, 3 meses
Puntos: 0
ocucltar div

hola: En primer lugar deciros que no tengo mucha idea de javascript.
Como resultado de una consulta a la bd obtengo una serie de div con id y name.
Mi idea es poder ocultar según el nombre (ya que como la id es única solo me trabajaría en la primera).
Es decir que al llamar a la función, oculte solo las que tienen el nombre de la varialbe enviada.
(Por ejem. si envio 'a' que solo me oculta las div con nombre a.
Lo he intentado con esta función, pero no va:

Código:
function cambiar(nombre)
{
 ele=document.getElementsByName(nombre); 
  ele.className = (ele.className == 'clase2') ? 'clase1' : 'clase2';
  
}

Código HTML:
<div id = 'a' name  = 'a' class='clase1'  > </div>
<div id = 'a' name  = 'a' class='clase1'  > </div>
<div id = 'a' name  = 'a'class='clase1'  > </div>
<div id = 'b' name  = 'b'class='clase1'  > </div>
<div id = 'b' name  = 'b'  class='clase1'  ></div> 
  #2 (permalink)  
Antiguo 26/06/2012, 05:16
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: ocucltar div

el problema es que no has entendido que el método getElementsByName() retorna una colección de elementos. en tu caso 3 elementos. por lo que necesitas usar un ciclo para recorrer esa colección e ir cambiando el className de cada elemento individualmente

<offtopic>en cuanto a las id, como bien dices han de ser únicas. si no van a ser únicas, de poco te van a servir y su existencia es inútil</offtopic>
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #3 (permalink)  
Antiguo 26/06/2012, 08:55
 
Fecha de Ingreso: enero-2008
Mensajes: 303
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: ocucltar div

Gracias Isabel. Tengo una duda.
el atributo name en la div sirve ?
Si es así como sería la función con el ciclo. No tengo idea como recorrer las div para ir renombrando los name.
Un saludo y gracias
  #4 (permalink)  
Antiguo 26/06/2012, 17:56
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 21 años, 6 meses
Puntos: 317
Respuesta: ocucltar div

En realidad el atributo name es para elementos de formulario.
Como no pones el contenido de las div's, no estoy seguro de cuál es el criterio para distinguir una de otra. Porque si esos nombres dependen del contenido de la caja, puedes perfectamente discriminar cuáles ocultas y cuáles no leyendo ese contenido.

Pero si quieres usar id, podrías hacer que el programa que los genera vaya incrementando un valor y se lo agregue al final.

Código:
<div id = 'a0' class='clase1'  > </div>
<div id = 'a1' class='clase1'  > </div>
<div id = 'a2' class='clase1'  > </div>
<div id = 'b3' class='clase1'  > </div>
<div id = 'b4' class='clase1'  ></div>
Todos los identificadores van a ser distintos, pero para elegirlos, solamente capturas el primer caracter, y con el escript le cambias el formato para que no se vea a los que quieras.
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 16:05.