将一个类select器和一个属性select器与jQuery结合起来

是否有可能结合类select器属性select器与jQuery?

例如,给定以下HTML:

<TABLE> <TR class="myclass" reference="12345"><TD>Row 1</TD></TR> <TR class="otherclass" reference="12345"><TD>Row 2</TD></TR> <TR class="myclass" reference="12345"><TD>Row 3</TD></TR> <TR class="myclass" reference="54321"><TD>Row 4</TD></TR> </TABLE> 

我可以用来select行1和3的select器是什么?

我努力了:

 $(".myclass [reference=12345]") // returns nothing $(".myclass, [reference=12345]") // returns all 4 rows (yes, I know the comma means 'or') 

我敢肯定,答案是非常简单的,我试图寻找jQuery论坛和文档,但我似乎无法找出这一个。 谁能帮忙?

结合他们。 从字面上它们结合起来; 它们连在一起,没有任何标点符号。

 $('.myclass[reference="12345"]') 

您的第一个select器将查找具有该属性值的元素,该元素包含在具有该类的元素中。
该空间被解释为后代select器 。

你的第二个select器,就像你所说的那样,查找具有属性值或类的元素,或者两者兼有。
逗号被解释为多select符运算符 – 不pipe这意味着什么(CSSselect器没有“运算符”的概念;逗号可能更准确地称为分隔符)。

我想你只需要删除空间。 即

 $(".myclass[reference=12345]").css('border', '#000 solid 1px'); 

这里有一个小提琴http://jsfiddle.net/xXEHY/

这个代码也可以工作:

 $("input[reference=12345].myclass").css('border', '#000 solid 1px');