Maison  >  Article  >  interface Web  >  Trois méthodes courantes permettant à jQuery de contrôler l'affichage TR et hide_jquery

Trois méthodes courantes permettant à jQuery de contrôler l'affichage TR et hide_jquery

WBOY
WBOYoriginal
2016-05-16 16:38:591755parcourir

Il en existe de nombreux en ligne, en voici trois types :

La première méthode consiste à utiliser id. Cette méthode peut définir dynamiquement l'identifiant de tr lors de la génération HTML. C'est également la méthode la plus couramment utilisée et la plus simple, comme suit :

.
<table> 
<tr><td>这行不隐藏</td></tr> 
<tr id="tr_1"><td>这行要隐藏</td></tr> 
<tr id="tr_2"><td>这行要隐藏</td></tr> 
... 
</table>

Ensuite le contrôle de visibilité peut être utilisé directement

for(var i = 1; i < tr_len; i++){ //tr_len是要控制的tr个数 
$("#tr_"+i).hide(); 
}

La deuxième méthode consiste à utiliser $.each(). Cette méthode nécessite de définir l'identifiant de la table, comme suit :

<table id="Tbl"> 
<tr><td>这行不隐藏</td></tr> 
<tr><td>这行要隐藏</td></tr> 
<tr><td>这行要隐藏</td></tr> 
... 
</table>

Ensuite le contrôle de visibilité peut être utilisé directement

$.each($("#Tbl tr"), function(i){ 
if(i > 0){ 
this.style.display = 'none'; 
} 
});

La troisième méthode consiste à utiliser le filtre d'attribut. Cette méthode nécessite l'ajout d'un attribut spécifique à tr, tel que la classe, comme suit :

<table id="Tbl"> 
<tr><td>这行不隐藏</td></tr> 
<tr><td class="hid">这行要隐藏</td></tr> 
<tr><td class="hid">这行要隐藏</td></tr> 
... 
</table>

Ensuite le contrôle de visibilité peut être utilisé directement

var trs = $("tr[class='hid']"); 
for(i = 0; i < trs.length; i++){ 
trs[i].style.display = "none"; //这里获取的trs[i]是DOM对象而不是jQuery对象,因此不能直接使用hide()方法 
}

C'est aussi simple que cela. Si vous souhaitez l'afficher, changez la méthode correspondante en show() ou changez l'attribut d'affichage en ""

Application pratique :

Remarque : Par défaut, seule la ligne contenant le "nom de la page correspondant" est affichée. Lorsque vous cliquez sur le bouton radio, différentes lignes s'affichent.

<tr> 
<td class="tr_title_edit"><label for="f_navname">对应页面链接<font color="red">*</font></label></td> 
<td class="tr_content_edit"> 
<input type="radio" id="f_inner" name="f_navState" value="1" checked="checked" /><label for="f_inner">内部链接</label> 
<input type="radio" id="f_outer" name="f_navState" value="2" /><label for="f_outer">外部链接</label></td> 
</tr> 

<tr id="il" style="display:block"> 
<td class="tr_title_edit"><label for="f_pagename">对应页面名称</label></td> 
<td class="tr_content_edit"><select name='f_pageid' id="f_pageid"> 
<option value=""></option> 
<option value="">新闻</option> 
<option value="">通知</option> 
</select></td> 
</tr> 
<tr id="ol" style="display:none"> 
<td class="tr_title_edit"><label for="f_navname">外部链接</label></td> 
<td class="tr_content_edit"><input type="text" class="inputLine" size="40" id="f_outsidelink" name="f_outsidelink" /></td> 
</tr>

Contrôlez le masquage et l'affichage par identifiant comme suit :

$("input[name='f_navState']").click(function(){ 
//if($("input[name='f_navState']").attr("checked")==true){ 
$("input[name='f_navState']").each(function(i){ 
if(this.checked){ 
var f_navState = $("input[name='f_navState']")[i].value; //获得单选框的值 
if(f_navState==1){ 
//alert(123); 
$("#il").show(); 
$("#ol").hide(); 
}else{ 
//alert(456); 
$("#ol").show(); 
$("#il").hide(); 
} 

} 
}); 
//} 

});
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn