поиск текста и отправка заголовка
Господа, есть долбаная база, писали её какие-то уроды...ни у одного элемента нет ни id ни name...очень нужен плагин для FF который будет искать текст на странице и я так понимаю это называется отправлять заголовок (могу ошибаться ибо я еще нупь :cray: ) вобщем переходить по ссылке)) вот кусок текста который надо иследовать
<td><a href="/sched.php?id=1965946">Забрать заказ</a></td> <td><a href="/eng.php?id=1965946" target="_blank">1965946</a></td> <td>23-02 12:00</td> <td>Ленинский пр.</td> тут id это номер заказа вобщем надо проверить что например там где написано Ленинский пр. совпадает с заранее задаными адресами... если совпадает с одним из заданных то нужно пройти по первой ссылке ссылке... если просить написать этот кусок кода слишком много, то хотябы помогите с алгоритмом действий позязя :cray: были бы id у всех элементов, думаю я бы справился... а так вобще не представляю как это сделать... |
<table> <td><a href="/sched.php?id=1965946">Забрать заказ</a></td> <td><a href="/eng.php?id=1965946" target="_blank">1965946</a></td> <td>23-02 12:00</td> <td>Ленинский пр.</td> </table> <script> var addresses = [ 'Ленинский пр.', 'ул. Трудовая' ]; var address = document.querySelector('table td:last-child').textContent; if (addresses.indexOf(address) !== -1) { var link = document.querySelector('table td:first-child a').href; alert('переходим на ' + link); window.location = link; } </script> |
а можно попросить пояснить что означает строка
var address = document.querySelector('table td:last-child').textContent; дело в том что таблиц с ячейками много... как именно скрипт поймет что это именно та таблица и ячейка? я так полагаю что я упустил этот момент в первом посте, прошу прощения... |
Цитата:
А если серьезно - то конечно нужны опознавательные признаки. За них сгодятся - id, class, другие любые атрибуты, порядок сделования, текстовое содержимое и прочее. Если css-селекторов будет недостаточно для нахождения нужного контента, можно подключить библиотеку jQuery, она дает удобные средства навигации по dom'у. |
боюсь нет возможности править базу на предмет присовения id шников... ех печаль печальная...
а на счет тесктовго содержимого... у таблицы верхняя строка статична.. по ней както можно идентифицировать таблицу? |
пример нужен
|
<table cellpadding="5px" cellspacing="2px" border="1">
<tr><td class="th">Забрать</td><td class="th">Номер дока</td><td class="th">Часы и минуты начала заказа</td> <td class="th">Метро</td> <td class="th">Описание проблемы</td><td class="th">Адрес </td><td class="th">Инфа о клиенте </td></tr> <tr> <td><a href="/sched.php?id=1965946">Забрать заказ</a></td> <td><a href="/eng.php?id=1965946" target="_blank">1965946</a></td> <td>23-02 12:00</td> <td>Ленинский пр.</td> <td>проблема</td> <td>адресс</td> <td>фио</td> </tr> </table> |
поглил немного, вроде начинаю что то понимать)))
но вот есть вопрос, который ну никак не дается... допустим вот код страницы <html> <body> <table> <tr> </tr> </table> <table> <tr> <td> </td> - как записать в переменную содержимое этой ячейки? <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> - и в другую переменную значение например этой(не первой и не последней) <td> </td> <td> </td> <td> </td> </tr> </table> |
Само содержимое элемента - это свойство .textContent
А сам элемент можно найти либо через прямую выборку по селектору (или через xpath), либо через индекс. var table = document.querySelector('table'); var cells = table.querySelectorAll('td'); var xxx = cells[0].textContent; // первая ячейка var yyy = cells[4].textContent; // пятая ячейка или var someCell = document.querySelector('table td:nth-child(1)'); var anotherCell = document.querySelector('table td:nth-last-child(3)'); // третья с конца |
но ведь тут две таблицы((( как же обратиться к ячейкам именно второй таблы???
var table = document.querySelector('table'); выбирает все таблицы которые потомки body, я правильно понял??? тогда чтобы работать имменно со втрой нужно var table = document.querySelector('table:nth-child(1)'); я правильно понял? |
Часовой пояс GMT +3, время: 00:32. |