Cita:
Iniciado por exxqizofrenicoo
yo uso jquery y la funcion each es la solucion para tu problema
como no pusiste ningun codigo de como se arman los div ni los botones no puedo ayudarte muy bien pero seria algo asi.
$(document).ready(function(){
$(body).find('el div').each(function(x, el){
//el seria cada div que encuentre
$(el).find('boton').click(function(){
//aca aplicarias la funcion de cada div
});
});
tire medio bolaso esperoque te ayude de guia por lo menos
y si hay algun error pasa que lo escribi a mano aca
});
Ok pondre el codigo
De esta manera se crean los "botones", que en realidad en estos momentos los manejo con listas:
<ul class="SlideTab" style="display: inline;list-style-type: none;" id="ul_<%=numPisoListado%>">
<a href="javascript
:showDiv(Piso<%=numPisoListado%>); " class="SlideTab" rel="#Piso<%=numPisoListado%>">PisoNum_<%=numPisoL istado%></a>
</ul>
Este codigo se encuentra dentro de un for, y se repite de acuerdo al numero de veces que tome valor la variable numPisoListado que no siempre sera el mismo, quedando una especie de menu de la siguiente manera:
PisoNum_1 PisoNum_2 PisoNum_3 ............ PisoNum_N
Como podrán observar intenté controlar (sin éxito) si se ocultan o muestran los divs con la siguiente funcion de JavaScript
:
function showDiv(divAnt)
{
var div = document.getElementById(divAnt);
if(div.style.display == 'block')
div.style.display = 'none';
else
div.style.display = 'block';
}
Aca está el div:
<div align="center" id="Piso<%=numPisoListado%>" style="display: none;">
Contenido
.
.
.
.
</div>
El div anterior se repite de igual manera que los ul de acuerdo al numero de valores que tome la variable numPisoListado,por lo que me resulta una lista del mismo tamaño de <div> y <ul>. Inicialmente los divs aparecen ocultos, esto con la propiedad display:none
Ahora lo que me falta es que al dar clic por ejemplo en PisoNum1 me muestre el div con el id Piso1, y al dar clic en el div PisoNum2 se oculte el div Piso1 y que solo me muestre el que corresponde que seria el div Piso2
Espero me haya explicado mejor
Gracias por su ayuda