2013-04-12 3 views
0

в веб-браузере управляет сайтом бронирования. когда я ищу A до B, он дает список предметов по цене. (цена - это переключатель), когда я нажимаю переключатель. новый div, созданный после некоторого процесса, на веб-странице появляется кнопка отправки с именем submitButton0. на той же веб-странице. сайт не изменен. Я хочу вызвать click of submitButton0.InvokeMember («Click»), поскольку он приходит в div

проблема есть это. Событие webBrowser1_DocumentCompleted выполнено. но это время submitButton0 не на странице. нажата кнопка прагматически readio. после некоторого процесса на странице появляется submitButton0. как submitButton0 приходит, я хочу быстро вызвать его клик.

Каково решение проблемы?

ответ

0

но время submitButton0 не в странице

Что, вероятно, означает, что кнопки добавляют Javascript. Невозможно синхронизировать с выполнением сценария, вам нужно опросить. Включите таймер в обработчике событий DocumentCompleted и в событии Tick, проверьте, была ли DOM изменена настолько, чтобы можно было надежно вызвать InvokeClick().

Проверьте, не имеет ли владелец сайта доступ к веб-сервису. Тот факт, что кнопки добавляются позже, является довольно сильным намеком на то, что TOU сайта не разрешает автоматизацию. И сервис делает ваше приложение более устойчивым к изменениям веб-страницы. Договор опроса DOM в значительной степени гарантированно сломается рано или поздно.

+0

Спасибо за слово «таймер». Я решил проблему с управлением таймером. Спасибо. – Braheen

Смежные вопросы