1
Je tente de masquer/afficher de manière dynamique plusieurs lignes de table en utilisant JavaScript pour imiter l'effondrement/l'expansion. ici sont extraits de code pertinents:IE7 avec rowspan lors de la réduction dynamique de plusieurs lignes (espace supplémentaire en bas)
function selectionFilter(check, filter){
var elem = document.getElementById('myScrollTable').rows;
for(i = 0; i < elem.length; i++){
var type = elem[i].getAttribute('type');
if(type== filter){
if(check == true){
elem[i].style.display='';
}else{
elem[i].style.display='none';
}
}
}
}
et voici l'échantillon HTML:
<input type="checkbox" checked="true" value="t1" onclick="selectionFilter(this.checked, this.value);">some type 1</input >
<input type="checkbox" value="t2" onclick="selectionFilter(this.checked, this.value);">some type 2</input ><br><br>
<table cellspacing="1" cellpadding="2" class="" id="myScrollTable">
<thead>
<tr>
<th>Data1</th>
<th>Data2</th>
</tr>
</thead>
<tbody>
<tr type="t1">
<td rowspan="50"><a href="something1">something1</a></td><td><a href="something2">something2</a></td>
</tr>
<tr type="t1">
<td><a href="something2">something2</a></td>
</tr>
.
.
<tr type="t2" style="display:none;">
<td rowspan="50"><a href="something1">something1</a></td><td><a href="something2">something2</a></td>
</tr>
<tr type="t2" style="display:none;">
<td><a href="something2">something2</a></td>
</tr>
.
.
</tbody>
</table>
Dans Firefox tout va bien. Cependant, dans IE, après la première fois qu'une ligne est cachée, quand elle n'est pas cachée, il y a de l'espace supplémentaire en bas. Cela ne se produit pas lorsque rowspan n'est pas utilisé. J'ai essayé beaucoup de choses mais je n'ai pas pu me débarrasser de l'espace supplémentaire.
Je serais vraiment reconnaissant si quelqu'un pouvait me donner un indice.
Probablement pas vant, mais dans cet exemple HTML, il semble qu'il manque une balise d'ouverture '
merci d'informer, c'est vrai. J'ai écrit l'exemple à la volée, il pourrait ne pas être vraiment une version de travail. – amorteza
Répondre
Avez-vous essayé d'utiliser le bloc au lieu d'une chaîne vide?
vous devriez essayer d'utiliser
et si cela échoue, vous devriez essayer
et AllWays vous devriez vérifier la documentation W3Schools, il est vraiment utile http://www.w3schools.com/css/pr_class_display.asp
Tellme si cette travaille pour vous
Source
2011-03-16 13:24:46 ShinyDarkStone
Merci pour votre réponse. J'ai essayé ces options mais je n'ai malheureusement pas eu de chance. à côté j'ai fait quelques modifications mineures au code html fourni (déplacé rowspan = "50" de tag à
Questions connexes