Как найти текст последнего элемента, если id немного отличаются.
Приветствую всех!
Есть поля инпут type="text" у которых есть id типа acf-field-id="field_54ef5f88727d7_2_field_54ef5f88727da" , где вместо 2 может быть любое число(как правило увеличивается сверху вниз с шагом 1). Как найти текст последнего(нижнего) инпута? |
Попробуй что-то типа этого
alert(document.querySelector('input:last-child').value); |
дело в том, что кроме
field_54ef5f88727d7_2_field_54ef5f88727da на странице есть еще много разных инпутов т.е. там таблица на несколько колонок и в каждой колонке свой тип инпутов, вот нужно найти текст в последнем инпуте именно определенной колонки, у которой ид такого типа field_54ef5f88727d7_2_field_54ef5f88727da, где вместо 2 разные числа |
mastersss,
<!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> </head> <body> <input id="field_54ef5f88727d7_200_field_54ef5f88727da"> <input id="field_54ef5f88727d7_2_field_54ef5f88727da"> <input id="field_54ef5f88727d7_7_field_54ef5f88727da" value="test"> <script> alert(document.querySelector('[id^="field_54ef5f88727d7_"]:last-of-type').value); </script> </body> </html> |
Цитата:
что-то типа field_54ef5f88727d7_[0-9]*_field_54ef5f88727da |
mastersss,
нет либо часть* либо начало^ или конец$ или написать функцию фильтрации |
почему-то находит первый элемент по document.querySelector('[id$="54ef5eac77c17"]:last-of-type').value
и по * тоже |
mastersss,
значит других нет |
mastersss,
<input id="field_54ef5f88727d7_200_field_54ef5f88727da"> <input id="field_54ef5f88727d7_2_field_54ef5f88727da"> <input id="field_54ef5f88727d7_7_field_54ef5f88727da" value="test"> <script> alert(document.querySelector('[id$="54ef5f88727da"]:last-of-type').value); </script> |
<!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> </head> <body> <table> <tr class="row"> <td class="field sub_field field_type-text field_key-field_54ef5eac77c17" data-field_type="text" data-field_key="field_54ef5eac77c17" data-field_name="ball"> <div class="inner"> <div class="acf-input-wrap"><input type="text" id="acf-field-field_54ef5de677c14_0_field_54ef5eac77c17" class="text" name="fields[field_54ef5de677c14][0][field_54ef5eac77c17]" value="55" placeholder=""></div> </div> </td> </tr> <tr class="row"> <td class="field sub_field field_type-text field_key-field_54ef5eac77c17" data-field_type="text" data-field_key="field_54ef5eac77c17" data-field_name="ball"> <div class="inner"> <div class="acf-input-wrap"><input type="text" id="acf-field-field_54ef5de677c14_1_field_54ef5eac77c17" class="text" name="fields[field_54ef5de677c14][1][field_54ef5eac77c17]" value="66" placeholder=""></div> </div> </td> </tr> <tr class="row"> <td class="field sub_field field_type-text field_key-field_54ef5eac77c17" data-field_type="text" data-field_key="field_54ef5eac77c17" data-field_name="ball"> <div class="inner"> <div class="acf-input-wrap"><input type="text" id="acf-field-field_54ef5de677c14_2_field_54ef5eac77c17" class="text" name="fields[field_54ef5de677c14][2][field_54ef5eac77c17]" value="77" placeholder=""></div> </div> </td> </tr> </table> <script> alert(document.querySelector('[id$="_field_54ef5eac77c17"]:last-of-type').value); </script> </body> </html> вместо 77 находит 55 :-E |
Часовой пояс GMT +3, время: 01:57. |