为什么我无法使用jQuery通过class和data-test属性选择<td>元素?

4
<table>
    <tr>
        <td class="ok" data-test="12-12 00">xxx</td>
        <td class="ok" data-test="13-12 00">xxx</td>
        <td class="ok" data-test="14-12 00">xxx</td>
        <td class="ok" data-test="15-12 00">xxx</td>
    </tr>
</table>

我想获取 data-test 等于 "14-12 00"<td>。下面是我的代码:

alert($('td .ok[data-test="14-12 00"]').text());​

这个为什么不起作用? http://jsfiddle.net/LqD5h/
2个回答

10

尝试:

alert($('td.ok[data-test="14-12 00"]').text());​

注意在td.ok之间没有空格。

您最初尝试选择所有具有data-test值的td后代中,类名为ok的元素。


@Paul 感谢您的编辑,我应该让那更明显。 - Asad Saeeduddin
@Asad:非常感谢,这就是为什么Stack Overflow上的所有内容都可以编辑——在其他人的答案中发现这样的问题总是更容易。 - Paul D. Waite

2
有没有其他方法来解决这个问题?(注:该句为俚语,意思是有没有其他的解决方案)
alert($('tr .ok[data-test="14-12 00"]').text());​

提示,td 变成了 tr。:-)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接