Este fragmento se repetirá todo <div id="wrap#">
y ocultarlos si la prueba se ocultan.
$("div[id^='wrap']").each(function() {
var wrap = $(this);
if(wrap.children("div[class^='test']:visible").length == 0) {
wrap.hide();
} else {
wrap.show();
}
});
Si aún desea mantener su <div id="wrap#">
visible si no hay ninguna prueba en absoluto (como en ninguno en el margen de beneficio), puede utilizar el siguiente fragmento modificado:
$("div[id^='wrap']").each(function() {
var wrap = $(this);
if(wrap.children("div[class^='test']").length > 0 &&
wrap.children("div[class^='test']:visible").length == 0) {
wrap.hide();
} else {
wrap.show();
}
});
No hay razón convincente para las clases de números (que no sean casos extremos). Su numeración complica el código anterior así como su CSS. Sería más fácil simplemente eliminar la numeración de test
. (Usted no lo necesita ya que siempre puede seleccionar un subconjunto de ellos utilizando :lt(index)
, :gt(index)
, :eq(index)
, :first
y :last
.
En cuanto a los identificadores de numeración, eso está bien, ya que cada id debe ser único.
¿Alguien puede editar el título de la pregunta? Estaba buscando "todos los div con la misma clase", y casi lo apruebo. Pregunta de votaciones ascendentes – Jason