我一定错过了一些基本的东西。启发我。
我正在尝试获取 ID(本例中为 289):
<tr class="header">
<th>ID</th>
<th>2</th>
<th>3</th>
</tr>
<tr class="highlight">
<td class="">289</td>
<td class="">field a</td>
<td class="">field b</td>
</tr>
... more rows
我正在使用这个选择器:
$("#requests :nth-child(2) td:first")
Firebug 控制台显示如下:
Object { length=1, more...}
对了。捕获其中的第一个元素:
>>> $("#requests :nth-child(2) td:first")[0]
<td class="">
所以,我想我可以打电话text()
或value()
或类似的方法。
如果我查看 Firebug 中的 DOM 选项卡,我会发现“childNodes”和“firstChild”带有 <TextNode textContent="289">
但我不知道如何检索它。
最佳答案
您需要编写$("#requests :nth-child(2) td:first").text()
。
使用 jQuery 对象的索引器 ($(...)[0]
) 将返回原始 DOM 元素。
如果要调用 jQuery 方法,则需要直接在 jQuery 对象上调用它们,而不使用索引器。
如果您想对 jQuery 集中的单个元素调用 jQuery 方法,请调用 eq
,像这样:$(...).eq(3).text()
。
jQuery 中没有 value()
方法。
val
方法将设置或返回表单元素的值。
关于jQuery:value() 和 text() 不返回表格单元格的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2327450/