attribute!=value is not returning the same results as XPath.

attribute!=value is not returning the same results as XPath.

I have a page with 21 TD elements that have a valign attribute set to top. 2 of these have an align=right. 4 of these have an align=left.

using a regular Xpath expression:

/td[@valign="top" and not(@align)]

correctly returns 15 TD elements from my page, 21-4-2 = 15.

the JQuery selector:

$('td[valign="top"][align!="right"][align!="left"]');

returns 0.

$('td[valign="top"][align!="right"]');

returns 19, correctly.

$('td[valign="top"][align!="left"]');

returns 2...

There is no align attribute set on the 15 that have a valign. What am I missing?