var spans = document.querySelectorAll('#divConfirm span');
spans.length = 43.
Вот что охватывает как выглядитпоиск через список узлов элементов с использованием регулярных выражений
spans: [<span id="ctl00_cphBody_lblTitleOrder" style="color:#003300;font-family:Verdana;font-size:18px;">Reservation Confirmation</span>, <span id="ctl00_cphBody_lblOrderNumber" style="color:#003300;font-family:verdana;font-size:20px;">Reservation Number: 604905</span>, <span id="ctl00_cphBody_lblDate" style="color:#003300;font-family:Verdana;font-size:18px;">Excursion Date: 8/1/2016</span>...
Этот список пролеты содержат данные, и каждый из них имеет атрибут id
. Я бы хотел, чтобы regex искал этот id
, чтобы получить соответствующую точку данных.
Я бы обычно делал что-то вроде, например. spans.querySelectorAll("spans[id*='OrderNumber']")[0].
Но так как все элементы уже есть span
, похоже, что это не сработает.
Как я могу искать прокси на основе регулярных выражений? Я рассматривал преобразование списка узлов списка в массив, но затем Google говорит, что вы не можете использовать регулярное выражение с indexOf
, поэтому использование querySelectorAll()
с перечнем узлов и регулярным выражением *=
похоже на путь.
Как пример, как бы получить второй элемент в пролетах, элемент span OrderNumber
?
Просто опустите 'span':' spans.querySelectorAll ("[id * = 'OrderNumber' ] ") [0]'. Или, еще лучше, почему бы не использовать 'document.getElementById (OrderNumber)'? – RobertAKARobin
спасибо, но Uncaught TypeError: spans.querySelectorAll не является функцией (...) –
Regex - неправильный инструмент для задания, просто исправьте селектор запросов: 'document.querySelector ('# divConfirm span [id * =" OrderNumber "]') '. Конечно, это глупый селектор, когда вам нужно просто обновлять свои элементы для использования классов, а затем вы можете выбрать с помощью 'document.querySelector ('. Confirm .order-number')' – zzzzBov