ホームページ  >  記事  >  ウェブフロントエンド  >  jqueryセレクター:hiddenと[type=hidden]の違い

jqueryセレクター:hiddenと[type=hidden]の違い

黄舟
黄舟オリジナル
2017-06-23 11:42:511825ブラウズ

selector:hidden の説明に関して、jquery ドキュメントには次のように書かれています: すべての非表示要素、または型が hidden の要素と一致します。 [type=hidden] は、typeattributeが hidden に等しいすべての要素を検索します。両者には類似点と相違点があります。 :hidden は、すべての非表示要素、またはスタイルが none に等しい display を持つすべての要素とサブ要素、および type="hidden" を持つフォーム要素が検索結果に含まれますが、[type=hidden] は検索結果にのみ含まれます。 type 属性が非表示になっている要素を検索します。

つまり、input:hidden は、テキストボックス、ラジオ、チェックボックス、ボタンなどを含む、目に見えないコンテナ内の入力要素と、type="hidden" のフォーム要素を検索することです。 input[type=hidden] は、type="hidden" を持つフォーム要素のみを検索します。次の例を見てみましょう:

<!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>

この例では、div1 を非表示にする前は $("input:hidden").length=1;$("input[type=hidden]").length=1、非表示にした後は非表示: $("input:hidden").length=5;$("input[type=hidden]").length=1、明らかに

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

も含まれており、$("input[type=hidden] ").length は変更されません。

以上がjqueryセレクター:hiddenと[type=hidden]の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。