![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() Вообщем выполняю действия через TWebBrowser на сайте.
Но вдруг внезапно перестал находиться элемент, при том что в исходном коде он есть (смотрел в IE) о вобщем счете конструкция понятна Код:
var elem: IHTMLElement; document: IHTMLDocument2; all: IHTMLElementCollection; .... for i:=0 to all.length-1 do begin elem:=all.item(i, '') as IHTMLElement; if (elem.className='бла бла бла') then действия; end; Вопрос как такое может быть что он не находится теперь хотя в исходном коде есть? Вот буквально день назад все работало. |
#2
|
||||
|
||||
![]() Либо ты неправильно его ищешь, либо он удаляется со страницы динамически до того, как ты его находишь. Думаю, что шансы 70/30 в пользу первого варианта.
Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#3
|
||||
|
||||
![]() Так ну вот уже пример
страничка Код:
var i: Integer; elem: IHTMLElement; document: IHTMLDocument2; all: IHTMLElementCollection; begin document:=WebBrowser1.Document as IHTMLDocument2; all:=document.all; for i:=0 to all.length-1 do begin elem:=all.item(i, '') as IHTMLElement; if (elem.getAttribute('name',0)='first') then if (elem.className='form-input') then elem.innerText:=name; end; end; Цитата:
Последний раз редактировалось ALexandr555, 17.11.2012 в 23:08. |
#4
|
||||
|
||||
![]() Пройдись по циклу под отладчиком...
Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#5
|
||||
|
||||
![]() Цитата:
|
#6
|
||||
|
||||
![]() ~1000 элементов глядеть? а вобще проходился на поиск тега "input",
нашел несколько полей, только не нужное. |
#7
|
||||
|
||||
![]() Цитата:
Код:
..... elem.innerText:=name; ..... |
#8
|
||||
|
||||
![]() Пардон, напартачил с выходом из цыкла.
предполагаемо последний элемент находился первым |