【发布时间】:2013-12-21 03:57:52
【问题描述】:
我有以下代码:
<tr>
<td Width="50%" align="left">
<span id="ctl00_lblTotalDesc">Ext. Subtotal</span></td>
<td Width="50%" align="right">
<span id="ctl00_lblTotalValue">100,087,000.00</span></td>
</tr>
我使用以下方法来获取第二个 span 元素的值:
spanValue = $('#ctl00_lblTotalValue').text();
但这似乎在 Spock/Geb 中不起作用。我收到以下错误:
TypeError: $(...).text is not a function
我做错了什么
如果我使用 $('#ctl00_lblTotalValue'),则会收到以下错误
[object HTMLTableElement]
Firefox 控制台没用,所以使用 Chrome 控制台。
在 Chrome 中:如果我尝试 $('#ctl00_lblTotalValue'),我会得到 p>
<span id="ctl00_lblTotalValue">100,087,000.00</span>
但是 .text() - 给出类型错误:Object # has no method 'text'
【问题讨论】:
-
看起来
$不是指 jQuery 在这里试试jQuery('#ctl00_lblTotalValue').text() -
页面中使用的其他库是什么?你也有正确地在页面中包含 jQuery
-
检查
alert($ === jQuery) -
当我尝试打印它返回 null 的值。嗨 Arun,我在该页面上使用了很多选择器,并且所有选择器都可以正常使用 $ 函数
-
您似乎将 javascript 与 Groovy 混合,并将 Geb 与 jQuery 混合在一起,而不是第一次。这些东西都不一样。此外,
TypeError: $(...).text is not a function不是 Geb/Spock/Groovy 错误,而是 javascript 错误。你到底在问什么?
标签: jquery jquery-selectors spock geb