Вы возвращаете Subscription
из своего сервиса (и, следовательно, своего распознавателя) вместо того, чтобы возвращать Наблюдаемое. Не подписывайтесь на услуги. И укажите возвращаемые значения, чтобы избежать стрельбы себе в ногу:
getCategories(): Observable> {
return this.http.get('https://myapi.com/something').pipe(
map(something => something.response)
);
}
Обратите внимание
Прочтите руководство HttpClient , а также RxJS .
С jQuery у Вас есть опция предоставления второго параметра после селекторного выражения, и это становится контекстом что использование jQuery для ограничения объема поиска. Узнайте больше здесь
Можно также использовать .find (выражение), если у Вас уже есть объект jQuery, в котором Вы хотите искать.
В Вашем примере:
jQuery('td[class=bgoff]').each(function() {
var td = jQuery(this);
$(td).find( <selector to search within td> );
});
Из источника jQuery:
// HANDLE: $(expr, context)
// (which is just equivalent to: $(context).find(expr)