Добавление строки каждый раз, когда $ () выбирает что-то - PullRequest
1 голос
/ 30 января 2020

я работал над просмотром веб-страниц с кукловодом на этом итальянском сайте ставок , я хочу выбрать div, который содержит название двух команд, составляющих часть игры. Итак, я сделал это:

let matches = $('span.AvvenimentoDescription-rieyuj-0').text();
console.log(matches)

, и мне удалось это повторить:

'Bologna - BresciaCagliari - ParmaSassuolo - RomaJuventus - FiorentinaAtalanta - GenoaLazio - SpalMilan - Hellas VeronaLecce - TorinoUdinese - InterSampdoria - Napoli'

Как видите, спички расположены рядом друг с другом:

'Bologna - BresciaCagliari - Parma...'

я хочу, чтобы это было:

'Bologna - Brescia Cagliari - Parma...'

или даже лучше

`'Bologna - Brescia,Cagliari - Parma...`

Итак, есть ли способ добавлять пробел или запятую каждый раз, когда $ () выбирает что-то?

1 Ответ

2 голосов
/ 30 января 2020

Проблема заключается в том, что при вызове text() для jQuery объекта, нацеленного на несколько элементов, jQuery автоматически объединит их значения, следовательно, между значениями не будет пробелов.

Чтобы лучше подходить к этому, использовать map() для создания массива значений. Затем вы можете join() этот массив сформировать строку в любом формате, который вам нужен. Вот пример, который разделяет значения запятой:

let matches = $('span.AvvenimentoDescription-rieyuj-0').map((i, el) => el.textContent.trim()).get();
let output = matches.join(', ');
console.log(output);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...