zoukankan      html  css  js  c++  java
  • jquery中选择器input:hidden和input[type=hidden]的区别

    关于选择器:hidden的说明,在jquery说明文档中是这样说的:匹配所有不可见元素,或者type为hidden的元素。而[type=hidden]是查找所有type属性等于hidden的元素。两者是有相同之处和不同之处的。:hidden匹配所有不可见元素,或者type为hidden的元素,所有样式display等于none的元素和子元素以及type="hidden"的表单元素都在查找的结果中,而[type=hidden]则只查找type属性为hidden的元素。

    所以,input:hidden是查找不可见容器中的input元素,包括,textbox,radio,checkbox,button等和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始终没有变。

  • 相关阅读:
    IE9发布会,有想去的联系我,有赠票(3月21日,周一)
    HTML5时代的浏览器全面测试
    CTO门的windows 7 要不要买?是不是正版?
    约束与索引
    Linux关机命令详解
    CSS XSLT
    xml xslt中的空格输出处理
    Jmeter笔记(15)随机取 用户定义的变量
    $.getJSON不执行的原因
    更改eclipse中java和jsp文件字体的大小
  • 原文地址:https://www.cnblogs.com/maijin/p/6974065.html
Copyright © 2011-2022 走看看