jQuery nth-child过滤器li.class

时间:2015-07-11 21:11:20

标签: jquery css

短CSS代码:

 .hide {display: none;}

这是HTML:

         <ul>
            <li class="title">Who Are You?</li>
            <li class="fields">
                <label>*First Name:</label><br />
                <input id="first_name" class="req" type="text" /><br />
                <label>Middle Name:</label><br />
                <input id="middle_name" type="text" /><br />
                <label>Last Name Name:</label><br />
                <input id="last_name" type="text" /><br />
                <label>*Email:</label><br />
                <input id="email" class="req" type="text" /><br />
            </li>
            <li class="title">Where Are You?</li>
            <li class="fields">
                <label>City:</label><br />
                <input id="city" type="text" /><br />
                <label>*State:</label><br />
                <input id="state" class="req" type="text" /><br />
                <label>Country:</label><br />
                <input id="country" type="text" /><br />
            </li>
            <li class="title">What Do You Do?</li>
            <li class="fields">
                <label>*Occupation:</label><br />
                <input id="occupation" class="req" type="text" /><br />
                <label>Company</label><br />
                <input id="company" type="text" /><br />
                <label>Company Location:</label><br />
                <input id="location" type="text" /><br />
            </li>
        </ul>

这是jQuery *:

$(document).ready(function(){
    $('li.fields').filter(':nth-child(n+4)').addClass('hide');
});

*我自己没有编写代码

我的麻烦在于我不知道这个jQ代码是如何过滤的。它隐藏了包含类&#34;字段&#34;的第二个和第三个li元素,但它不应该隐藏在姓氏[...]中并进一步隐藏?

1 个答案:

答案 0 :(得分:3)

您使用的jQuery选择器和过滤器的工作方式如下。

首先,CREATE TRIGGER DeletedClientDB ON systemclients FOR DELETE AS DECLARE @dropdb VARCHAR(150); Select @dropdb = 'drop database ' + deleted.SystemClientID FROM deleted) Exec(@dropdb) GO 使用类li.fields选择li元素,后者原来是.fields的第2,第4和第6个子元素。 (为了澄清,第1,第3和第5个子元素具有ul类。)请记住.title采用值0,1,2,...

n过滤然后选出第4,第5,第6 ......子元素,这意味着第4和第6 :nth-child(n+4)个元素被赋予li类,隐藏它们。

.hide元素是相应label元素的子元素,而不是li元素的元素,因此,它们不会影响选择。