Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 22.02.2013, 23:04
Новичок на форуме
Отправить личное сообщение для worox5 Посмотреть профиль Найти все сообщения от worox5
 
Регистрация: 22.02.2013
Сообщений: 9

поиск текста и отправка заголовка
Господа, есть долбаная база, писали её какие-то уроды...ни у одного элемента нет ни id ни name...очень нужен плагин для FF который будет искать текст на странице и я так понимаю это называется отправлять заголовок (могу ошибаться ибо я еще нупь ) вобщем переходить по ссылке)) вот кусок текста который надо иследовать

<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 это номер заказа
вобщем надо проверить что например там где написано Ленинский пр. совпадает с заранее задаными адресами... если совпадает с одним из заданных то нужно пройти по первой ссылке ссылке...

если просить написать этот кусок кода слишком много, то хотябы помогите с алгоритмом действий позязя

были бы id у всех элементов, думаю я бы справился... а так вобще не представляю как это сделать...
Ответить с цитированием
  #2 (permalink)  
Старый 22.02.2013, 23:40
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

<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>
Ответить с цитированием
  #3 (permalink)  
Старый 22.02.2013, 23:50
Новичок на форуме
Отправить личное сообщение для worox5 Посмотреть профиль Найти все сообщения от worox5
 
Регистрация: 22.02.2013
Сообщений: 9

а можно попросить пояснить что означает строка
var address = document.querySelector('table td:last-child').textContent;

дело в том что таблиц с ячейками много... как именно скрипт поймет что это именно та таблица и ячейка?
я так полагаю что я упустил этот момент в первом посте, прошу прощения...

Последний раз редактировалось worox5, 22.02.2013 в 23:55.
Ответить с цитированием
  #4 (permalink)  
Старый 22.02.2013, 23:55
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от worox5
как именно скрипт поймет что это именно та таблица и ячейка
Догадается )
А если серьезно - то конечно нужны опознавательные признаки.
За них сгодятся - id, class, другие любые атрибуты, порядок сделования, текстовое содержимое и прочее. Если css-селекторов будет недостаточно для нахождения нужного контента, можно подключить библиотеку jQuery, она дает удобные средства навигации по dom'у.
Ответить с цитированием
  #5 (permalink)  
Старый 22.02.2013, 23:58
Новичок на форуме
Отправить личное сообщение для worox5 Посмотреть профиль Найти все сообщения от worox5
 
Регистрация: 22.02.2013
Сообщений: 9

боюсь нет возможности править базу на предмет присовения id шников... ех печаль печальная...
а на счет тесктовго содержимого... у таблицы верхняя строка статична.. по ней както можно идентифицировать таблицу?
Ответить с цитированием
  #6 (permalink)  
Старый 23.02.2013, 00:09
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

пример нужен
Ответить с цитированием
  #7 (permalink)  
Старый 23.02.2013, 00:21
Новичок на форуме
Отправить личное сообщение для worox5 Посмотреть профиль Найти все сообщения от worox5
 
Регистрация: 22.02.2013
Сообщений: 9

<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>
Ответить с цитированием
  #8 (permalink)  
Старый 23.02.2013, 13:05
Новичок на форуме
Отправить личное сообщение для worox5 Посмотреть профиль Найти все сообщения от worox5
 
Регистрация: 22.02.2013
Сообщений: 9

поглил немного, вроде начинаю что то понимать)))

но вот есть вопрос, который ну никак не дается...

допустим вот код страницы

<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>
Ответить с цитированием
  #9 (permalink)  
Старый 23.02.2013, 13:16
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Само содержимое элемента - это свойство .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)'); // третья с конца

Последний раз редактировалось danik.js, 23.02.2013 в 13:58.
Ответить с цитированием
  #10 (permalink)  
Старый 23.02.2013, 13:51
Новичок на форуме
Отправить личное сообщение для worox5 Посмотреть профиль Найти все сообщения от worox5
 
Регистрация: 22.02.2013
Сообщений: 9

но ведь тут две таблицы((( как же обратиться к ячейкам именно второй таблы???

var table = document.querySelector('table'); выбирает все таблицы которые потомки body, я правильно понял???
тогда чтобы работать имменно со втрой нужно

var table = document.querySelector('table:nth-child(1)'); я правильно понял?

Последний раз редактировалось worox5, 23.02.2013 в 14:09.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск текста на странице Azazaza jQuery 6 16.02.2013 00:47
Поиск текста на странице(JavaScript) Ogara Events/DOM/Window 0 29.12.2012 13:13
Поиск текста на странице setRange quazare Firefox/Mozilla 0 07.04.2011 22:09
Скрипты отправка сообщений между пользователями, скрипт вывод текста на страницу.... Rapala Элементы интерфейса 2 12.01.2011 17:27
Поиск текста в блоке со скроллингом lukingnu Элементы интерфейса 0 05.08.2010 22:54