jquery 属性筛选器 中问题不含字母‘a’,您的答案看着不对,空格怎么表示呢

来源:2-10 jQuery选择器之属性筛选选择器

梨渦淺笑

2016-03-16 16:06

46行  老师给出的答案对么? 问题里没有包含字母‘a’,       //查找所有div中,有属性name中的值包含一个连字符“空”的div元素       我这样写也找不到这个元素 $("div[name~=' ']").css("border", "3px groove #668B8B");   空格怎么表示呢

写回答 关注

6回答

  • 乀左小颜
    2016-08-26 14:36:41

    对于老师给出的答案$("div[name~='a']") ,我的理解是这样的:  其中的'~'波浪线表示结果需包含有空格条件,而等号后的'a'是举例value=a的例子,结合左边图片里面的描述就是'包含有空格且也包含值a'的,即name="a b"

    乀左小颜

    并且有个值a用空格分隔周围的

    2016-08-26 14:59:09

    共 1 条回复 >

  • endenvor
    2016-08-08 14:27:38

    4:属性包含单词过滤器

         用于选择指定属性值中包含给定单词(由空格分隔)的元素

        格式:$("selector[attribute~=value]");

        例子:$('input[name~='news']').val("name中包含news单词的元素");

    参考文档http://blog.csdn.net/woshisap/article/details/7341136


    不明白可以问我

  • hao_liu
    2016-04-29 16:31:50

    //我第一次是这么做的

    <script type="text/javascript">

            //查找所有div中,有属性name中的值包含一个连字符“-”的div元素

            $("div[name*='-']").css("border", "3px groove #00FF00"); 

        </script>

        <script type="text/javascript">

            //查找所有div中,有属性name中的值包含一个连字符“空”的div元素

            $("div[name*=' ']").css("border", "3px groove #668B8B"); 

        </script>

    //后来仔细看了 ~=和 |=的定义,其实就是老师给的那个答案,只不过是问题问的方式不一样,仔细看看定义理解下

  • 旭日A
    2016-04-21 17:26:53

    问题描述有错误,应该是 a-为前缀  以空格分隔后含有字符a 老师主要是为了让我们练习,所以题目描述不严谨

  • 小白是猫猫的小白
    2016-03-19 16:30:37

    $('div[name|=a]') 定义里面就说明了“|=”是为了属性里面带连字符“-”而生的,而且“-”必须跟在“a”后面,所以$('div[name|=a]')是对的,$('div[name|=b]')就错了;

    同理,$('div[name~=a]') 没错,“~=”本身也是为了属性中带空格而生的,不过没有位置限制,所以$('div[name~=a]')和$('div[name~=b]')是等价的;

    不查找带“-”和空格的元素用$('div[name*=a]')就可以了,这个查找范围最大。

    我也是小白,刚看到这里,以上个人理解,嘿嘿~~

  • 沿光路起飞
    2016-03-16 16:50:50

    同问,我也做不出来

jQuery基础 (一)—样式篇

jQuery初入开启样式修炼,体验万能的jQuery样式集搭建网站布局

217509 学习 · 1218 问题

查看课程

相似问题