Показать сообщение отдельно
  #1 (permalink)  
Старый 06.02.2015, 14:45
Новичок на форуме
Отправить личное сообщение для buthil Посмотреть профиль Найти все сообщения от buthil
 
Регистрация: 06.02.2015
Сообщений: 4

Программный клик на не стандартной кнопке
Здравствуйте, коллеги!
Работаю в больнице. Есть внутренняя программа для записи пациентов на прием (Delphi 7) и база (SQL Server 2008 r2).
Имею задачу наладить онлайн передачу данных на сайт Мин здрава области.
В программе использую вместо IE компонент TChromium.
Для навигации и ввода данных применяю конструкцию:
ExecuteJavaScript(Sq,'about:blank',0), где Sq - текст скрипта.
Таким образом удалось пройти окно авторизации и отобразить окно поиска пациентов.
Здесь имеются визуальные поля для ввода ФИО, а также кнопка Поиск.
ФИО удалось заполнить программно, а вот программно кликнуть на кнопку не удается.
В редакторе браузера Mozilla для этой кнопки я получил такой код:

<td class="lsd-form-grid-cell lsd-forms-field-control ">
<div class="lsd-buttons-panel">
<span id="3793" class="lsd-widgets-action lsd-focusable lsd-widgets-action-operation-full-search lsd-lockable lsd-lockable-submit lsd-input-focused" title="Поиск">
<a class="lsd-widgets-action-link lsd-widgets-action-text" href="javascript:void(0);">
Поиск</a>
<span class="lsd-widgets-action-data" style="display:none;"></span>
</span></div></td>

При этом числовой id изменяется при каждом открытии страницы.
Я пробовал так:
Сначала нашел все node по getElementsByClassName.
Потом по вхождению уникального текста в InnerHTML нашел потребную node и кликнул по ней: node.click();
Но ни чего не произошло. Собственно, здесь и нет обработчика onClick.
Пробовал установить фокус и передаться по ссылке, взятой из href:
node.focus();document.location.href="javascript:vo id(0);";
Тоже ни какого результата.
Может устанавливать фокус и кликать нужно по внутренним элементам этой node?
Прошу пощи!
С уважением, buthil.
Ответить с цитированием