2

我有一个带有“report-standard-alternatingrowcolors”类的表,element_id 是 tr 元素的 id。在选择器的末尾,我想选择带有属性选择器的 td 元素。“.data”是 td 元素的类。但是没有用。它选择所有 td 值。你有什么主意吗?

alert($('.report-standard-alternatingrowcolors #element_id .data[headers="STATE"]').val());

您可以查看:http: //jsfiddle.net/BscPP/

4

4 回答 4

4

http://jsfiddle.net/BscPP/1/

给你。您没有report-standard...引号内的主要内容,因此这行不通。此外,您在选择器中投入了大量精力。在提供的示例中,所需要的只是使用.data[headers="STATE"]and 使用 the.text()而不是.val()

于 2012-05-12T05:17:38.050 回答
3

你的例子有一些问题。

您加载了 MooTools 而不是 jQuery。

你的 HTML 是错误的。

<table class=""report-standard-alternatingrowcolors>

您需要将课程放在引号中

<table class="report-standard-alternatingrowcolors">

<td>s没有value属性,所以.val()是错误的方法,试试吧.text()

固定示例:http: //jsfiddle.net/BscPP/2/

PS如果你想为元素添加自定义属性,你应该在它们前面加上data-

<td class="data" data-headers="STATE">123</td>

然后将选择器更改为:

$('.report-standard-alternatingrowcolors #element_id .data[data-headers="STATE"]')

新演示:http: //jsfiddle.net/BscPP/3/

注意:ID 应该是唯一的,所以.report-standard-alternatingrowcolors有点无关紧要。

$('#element_id .data[data-headers="STATE"]')
于 2012-05-12T05:17:49.420 回答
2

你几乎明白了。在您的 jsFiddle 中,只需更改.val()为即可.text()。一个 td 元素没有价值。

此外,在小提琴中,您的课程"report-standard-alternatingrowcolors"位置不正确,它位于" ".

于 2012-05-12T05:19:10.790 回答
1
$('#element_id td.data[headers="STATE"]', '.report-standard-alternatingrowcolors').text()

小提琴

于 2012-05-12T05:16:50.220 回答