<div class="div" testattr="true" name="--">
<a>[att|=val]</a>
</div>
<script type="text/javascript">
//查找所有div中,有属性name中的值只包含一个连字符“-”的div元素
$('div[name|="-"]').css("border", "3px groove #00FF00");
</script>
Q:为啥这样也能选中?
【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者加Q:28554482,互相学习,共同进步!】
因为选择$(":[attr |= 'value']")的作用是, 选择制定属性值等于给定字符串 或者 以该字符串为前缀的元素(该字符串后面跟一个'-')。你的name = '--'表示的意思就是以'-'为前缀的字符串, 只不过'-'后面又跟了一个'-',不知道这样你能明白不?