Задать вопрос
@Almazmr

Как создать счетчик селектора?

Возможно вопрос был задан неправильно.
Кратко, на сайте необходимо найти количество выигранных матчей для команды Уфы, в другой раз будет другая команда. Только вот изучаю методы js и возникли трудности
1) с созданием счетчика для селектора по переберу команд
2) как можно парсить статистику выигранных матчей для текущей команды.
var gorod = 'Уфа' 
for (var i = 0; 15; i++) {
	var listTable = window.document.querySelectorAll('#stat_data > div.tournament-tabs.rnpqq.js-tournament-tabs > div._light.mghhp.js-tournament-tab-content.tournament-tabs__content._active.tabs-content > div > table > tbody > tr')
	var komanda = listTable[i].querySelector('table-item__name')
	
	if komanda == gorod {
		var win = //выиграно матчей		
	}
}

5c534bbad1140941563357.png
  • Вопрос задан
  • 137 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 2
0xD34F
@0xD34F Куратор тега JavaScript
function getWinCount(team) {
  const el = Array.prototype.find.call(
    document.querySelectorAll('.table-item__name'),
    n => n.textContent === team
  );

  return el ? +el.closest('tr').children[3].textContent : null;
}


const wins = getWinCount('Уфа');


UPD. Вынесено из комментариев:

Мой браузер не поддерживает ES-2015

На будущее: о таких вещах следует говорить сразу.

Будет работать в IE11:

function getWinCount(team) {
  var teams = document.querySelectorAll('.table-item__name');

  for (let i = 0; i < teams.length; i++) {
    var el = teams[i];
    if (el.textContent === team) {
      while ((el = el.parentNode).tagName !== 'TR') ;
      return +el.children[3].textContent;
    }
  }

  return null;
}
Ответ написан
Stalker_RED
@Stalker_RED
let search = 'Уфа',
    commands = document.querySelectorAll('.table-item__name'),
    command = [...commands].find(x => x.textContent === search),
    row = command.closest('tr'),
    cells = row.querySelectorAll('td'),
    result = cells[3].textContent


То-же самое более компактно:
var search = 'Уфа',
    result = Array.from(document.querySelectorAll('.table-item__name'))
      .find(x => x.textContent === search)
      .closest('tr')
      .querySelectorAll('td')[3].textContent
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы