Я новичок в casperjs, и у меня возникла проблема с функцией оценки().
HTML-код (который я не могу изменить прямо сейчас)
<table>
<tr>
<td>Price</td>
<td>some other field</td>
<td>blah</td>
<td>foo</td>
</tr>
<tr>
<td>125.3</td>
<td>some other value</td>
<td>something else</td>
</table>
Цель состоит в том, чтобы начать собирать информацию из этих таблиц, получать первые td для каждой строки, а затем что-то делать с ними. У меня проблема в том, что функция "каждая" ничего не делает.
Я пробовал также просто возвращать tr в переменную и делать с ней $.each(), но это тоже не работает. Каждый () недоступен в оценке? (У меня сложилось впечатление, что в оценке у вас было большинство методов jQuery)
var evaluatedItems = this.evaluate(function() {
var items = [];
$("td").filter(function() { return $.text([this]) == 'Price'; }).closest('table').find('tr').each(function() {
var col = $(this).find('td:first');
require('utils').dump(col);
items.push(col);
});
return items;
});