![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
При первой загрузке, или когда я вручную обновляю страницу, то ивент срабатывает.
Может быть не всю страницу загружается при нажатии на btn_find. Хотя страница iframe не содержит. Задача усложняется: надо проверить существует ли чекбокс. Алгоритм такой: 1. взял очередную строку из memo1 2. вводил в поле input_value 3. нажал на btn_find 4. подождал несколько секунд 5. проверил если не существует чекбокс, в memo2 добавляем ту строку. код такой: Код:
procedure TForm1.Button6Click(Sender: TObject);
begin
started:=1;
for i := 0 to memo1.lines.Count - 1 do begin
js:='document.getElementById("input_value").value="'+memo1.lines[i]+'";document.getElementById("btn_find").click();';
EdgeBrowser1.ExecuteScript(js);
Delay(2000);
js:='t="";s=document.getElementsByName("chbox1")[0];if (s==null) {t="NotFound";} else {document.getElementsByName("chbox1")[0].click();t="Found";}';
EdgeBrowser1.ExecuteScript(js);
end;
started:=0;
end;
procedure TForm1.EdgeBrowser1ExecuteScript(Sender: TCustomEdgeBrowser;
AResult: HRESULT; const AResultObjectAsJson: string);
begin
if (AResultObjectAsJson='NotFound') and ( started>0 ) then
memo2.Lines.add(memo1.Lines[i]+'-'+AResultObjectAsJson);
end; |