zoukankan      html  css  js  c++  java
  • [转]Jquery属性选择器(同时匹配多个条件,与或非)(附样例)

    1. 前言

    为了处理除了两项不符合条件外的选择,需要用到jquery选择器的多个条件匹配来处理,然后整理了一下相关的与或非的条件及其组合。

    作为笔记记录。

    2. 代码

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    <!DOCTYPE html>
    <html>
    <head>
        <title>Test multi selection</title>
        <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
        <script type="text/javascript">
     
        $().ready(function(){
             
            debugger;// open console and click F10
            //多条件选择
            $('#td1,#td2,p').css('color','red');
            //选择内容不是id=td1
            $('tbody td:not(#td1)').css('color','green');
            //选择条件1 attr1="a1" 和 条件2 attr2="a2"的元素
            $('[attr1="a1"][attr2="a2"]').css('color','blue');
            //选择条件1 attr1="a1" 或者 条件2 attr2="a2"的元素
            $('[attr1="a1"],[attr2="a2"]').css('color','yellow');
     
            //选择不满足 条件1 attr1="a1" 的元素
            $('tbody td[attr1!="a1"]').css('color','purple');
             
            //选择不满足 条件1 attr1="a1" 或 条件2 attr2="a2"的元素
            $('tbody td:not([attr1="a1"],[attr2="a2"])').css('color','orange');
            $('tbody td[attr1!="a1"][attr2!="a2"]').css('color','black');
     
            //选择不满足 条件1 attr1="a1" 和 条件2 attr2="a2"的元素
            $('tbody td:not([attr1="a1"][attr2="a2"])').css('color','#ff7700');
            $('tbody td[attr1!="a1"],tbody td[attr2!="a2"]').css('color','black');
     
            //选择tboy中td标签attr1!="a1" 和 所有标签中attr2!="a2", 即除了<td id="td3" attr1="a1" attr2="a2">3</td>的其它所有标签元素
            $('tbody td[attr1!="a1"],[attr2!="a2"]').css('color','grey');
        })
     
        </script>
    </head>
    <body>
    <table border="1px">
        <thead>
            <tr>
                <td>One</td>
                <td>Two</td>
                <td>Three</td>
                <td>Four</td>
                <td>Five</td>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td id="td1">1</td>
                <td id="td2">2</td>
                <td id="td3" attr1="a1" attr2="a2">3</td>
                <td id="td4" attr1="a1">4</td>
                <td id="td5">5</td>
            </tr>
        </tbody>
    </table>
    <p>I am first paragraph </p>
    </body>
    </html>  

    3. 效果

    1
    2
    //多条件选择
    $('#td1,#td2,p').css('color','red');

    1
    2
    //选择内容不是id=td1
    $('tbody td:not(#td1)').css('color','green'); 

    1
    2
    //选择条件1 attr1="a1" 和 条件2 attr2="a2"的元素
    $('[attr1="a1"][attr2="a2"]').css('color','blue');

    1
    2
    //选择条件1 attr1="a1" 或者 条件2 attr2="a2"的元素
    $('[attr1="a1"],[attr2="a2"]').css('color','yellow');

    1
    2
    //选择不满足 条件1 attr1="a1" 的元素
    $('tbody td[attr1!="a1"]').css('color','purple');

    1
    2
    //选择不满足 条件1 attr1="a1" 或 条件2 attr2="a2"的元素
    $('tbody td:not([attr1="a1"],[attr2="a2"])').css('color','orange');

    1
    2
    //选择不满足 条件1 attr1="a1" 或 条件2 attr2="a2"的元素(等价于上一条)
    $('tbody td[attr1!="a1"][attr2!="a2"]').css('color','black');

    1
    2
    //选择不满足 条件1 attr1="a1" 和 条件2 attr2="a2"的元素
    $('tbody td:not([attr1="a1"][attr2="a2"])').css('color','#ff7700');

    1
    2
    //选择不满足 条件1 attr1="a1" 和 条件2 attr2="a2"的元素(等价于上一条)
    $('tbody td[attr1!="a1"],tbody td[attr2!="a2"]').css('color','black'); 

    1
    2
    //选择tboy中td标签attr1!="a1" 和 所有标签中attr2!="a2", 即除了<td id="td3" attr1="a1" attr2="a2">3</td>的其它所有标签元素
    $('tbody td[attr1!="a1"],[attr2!="a2"]').css('color','grey');

    4. 参考

    http://www.runoob.com/jquery/jquery-ref-selectors.html


    ---------------------
    作者:85541585
    来源:CNBLOGS
    原文:https://www.cnblogs.com/fuxp/p/9903184.html
    版权声明:本文为作者原创文章,转载请附上博文链接!
    内容解析By:CSDN,CNBLOG博客文章一键转载插件

  • 相关阅读:
    Linked List Cycle leetcode java (链表检测环)
    Remove Duplicates from Sorted List II leetcode java
    Remove Duplicates from Sorted List leetcode java
    Merge Two Sorted Lists leetcode java
    Swap Nodes in Pairs leetcode java
    Median of Two Sorted Array leetcode java
    阿里云最便宜的四种域名注册
    nohup和&后台运行,进程查看及终止
    ipv6转ipv4 NAT64与DNS64基本原理概述
    ros使用pppoe拨号获取ipv6,并且下发IPV6的dns到客户机win7
  • 原文地址:https://www.cnblogs.com/admans/p/11910823.html
Copyright © 2011-2022 走看看