为什么在jQuery属性选择器中未检测到REL

为什么在jQuery属性选择器中未检测到REL,jquery,Jquery,如果使用以下选择器,则不会得到任何结果 $(".itemSearchModule .cmsItemList[rel='myRelValue']") 对于以下html代码段 <div class="itemSearchModule"> <ul class="cmsItemList" rel="myRelValue"> <li>something</li> </ul> </div> 某物

如果使用以下选择器,则不会得到任何结果

$(".itemSearchModule .cmsItemList[rel='myRelValue']")
对于以下html代码段

<div class="itemSearchModule">
    <ul class="cmsItemList" rel="myRelValue">
      <li>something</li>
    </ul>
</div>

  • 某物
错误 我正在使用firebug调试代码,似乎是在firebug监视窗口中使用该代码导致它崩溃的原因:)您只需以这种方式“调用”它:

$('.itemSearchModule.cmsItemList[rel=myRelValue]')

查看jQuery.com上的

另外,不要忘记在页面加载后调用选择器


$(document).ready(函数(){put\u selector\u here})

只允许和元素,因为它描述了两个文档之间的关系,即当前文档和
href
属性中引用的文档。您最好使用
class
id
属性来实现您的目的。

它仍然可以与jQuery一起工作,尽管在技术上不是有效的标记。但是在XHTML中,我可以在任何元素上拥有任何属性,如果我有一个定制的属性[myattr='test'],它就可以工作,为什么要阻止REL?!从技术上讲,你不能有rel标签。通过验证器运行它,你会得到一个错误。我知道它不适合你。但请看一些对你的问题的评论。我也一直这样做。无论它是否有效,您都应该能够设置attr('rel'),并使用选择器语法检索它,因为这样就不会有任何无效标记,只有针对DOM中的元素存储的属性!我看不出你的代码有什么不同?!我实际上是在给它传递一个字符串变量(问题代码简化了),文档上说引号是optionalint。您确定在调用jQuery时元素已经在DOM中了吗?嗯,您使用的是1.3.2吗?原因$(“.itemSearchModule.cmsItemList]”)以适当的rel明确存在,当我使用上述代码时,返回的列表为0