Maison  >  Article  >  interface Web  >  sélecteur jquery : la différence entre caché et [type=hidden]

sélecteur jquery : la différence entre caché et [type=hidden]

黄舟
黄舟original
2017-06-23 11:42:511757parcourir

Concernant la description de selector:hidden, la documentation jquery dit ceci : Faites correspondre tous les éléments invisibles, ou les éléments de type masqué. Et [type=hidden] consiste à trouver tous les éléments dont l'attribut type est égal à caché. Il existe des similitudes et des différences entre les deux. :hidden correspond à tous les éléments invisibles, ou éléments de type masqué, tous les éléments et sous-éléments avec un style display égal à none et les éléments de formulaire avec type="hidden" sont dans les résultats de recherche, et [type= Hidden] ne trouvera que les éléments dont l'attribut type est masqué.

Donc, input:hidden consiste à rechercher des éléments d'entrée dans des conteneurs invisibles, notamment une zone de texte, une radio, une case à cocher, un bouton, etc. et des éléments de formulaire de type="hidden". input[type=hidden] recherche uniquement les éléments de formulaire avec type="hidden". Prenons l'exemple suivant :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>jquery Demo</title>
<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript">
function beforeHidden()
{
    $("#result").text("隐藏前:$(\"input:hidden\").length="+$("input:hidden").length+";$(\"input[type=hidden]\").length="+$("input[type=hidden]").length);
}
function afterHidden()
{
    $("#div1").hide();
    $("#result").append("<br/>隐藏后:$(\"input:hidden\").length="+$("input:hidden").length+";$(\"input[type=hidden]\").length="+$("input[type=hidden]").length);
}
</script>
</head>

<body>
<form id="form1" name="form1" method="post" action="">
<div id="div1">
<input type="text"  id="txt" />
<input type="radio" id="rdo" /><label for="rdo">单选框</label>
<input type="checkbox" id="chx"/><label for="chx">复选框</label>
<br />
<input type="button" id="btn1" value="原始" onclick="beforeHidden();"/>
</div>
<input type="hidden" id="hd"/>
<input type="button" id="btn2" value="隐藏后" onclick="afterHidden();"/>
<div id="result"></div></form>
</body>
</html>

Dans l'exemple, avant que div1 ne soit masqué, $("input:hidden").length=1;$("input[type=hidden]").length= 1, Après avoir caché, après avoir caché : $("input:hidden").length=5;$("input[type=hidden]").length=1, évidemment,

div1中的<input type="text"  id="txt" />
<input type="radio" id="rdo" />
<input type="checkbox" id="chx"/>
<input type="button" id="btn1" value="原始"/>

est aussi inclus, mais $("input[type=hidden]").length n'a jamais changé.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

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