![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#31
|
||||
|
||||
|
Цитата:
Или же если использовать вышеуказанный модуль jsWebBrowser, то примерно как-то так: Код:
Webbrowser1.getElementsByTagName('input',el,'type','radio'); |
|
#32
|
|||
|
|||
|
Так я же говорю что так не получается. Там ведь нужно еще учитывать поле value в котором есть значение которое мне нужно.
Код:
Webbrowser1.getElementsByTagName('input',el,'type','radio'); |
|
#33
|
|||
|
|||
|
И правда. я был не прав. он дает мне все элементы типа радио. в которых и содержатся ответы "Да".
|
|
#34
|
||||
|
||||
|
Цитата:
|
| Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
udachnik2 (09.11.2012)
| ||
|
#35
|
|||
|
|||
|
Да, так и есть, просто я не правильно выразился. Но теперь опять мне не понятно как сделать так что бы он выбирал только те где ответ да? Они ведь расположены так:
Да Нет Не знаю Да Нет Не знаю вот теперь надо как то настроить этот for...do что бы он отмечал только те что мне надо. Код:
Webbrowser1.getElementsByTagName('input',el,'type','radio');
for tip:=0+2 to 21 do
el[tip].click; |
|
#36
|
||||
|
||||
|
Цитата:
|
| Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
udachnik2 (09.11.2012)
| ||
|
#37
|
|||
|
|||
|
Вах. Вот это да. Только я не знаю где у этих элементов лежит их value. Видел там GetAtribute. но при таком if el[tip].getAttribute('value')=1 then коде он говорит что не актуальны параметры.
|
|
#38
|
||||
|
||||
|
Цитата:
А вообще по значению value наверно не очень надёжно определять. Если нужно кликнуть только по тем, что "Да", то думаю лучше проверять, что текст там действительно "Да". |
| Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
udachnik2 (09.11.2012)
| ||
|
#39
|
||||
|
||||
|
Вот проверил. У меня вот так работает:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
el: Helems;
i: Integer;
begin
Webbrowser1.getElementsByTagName('input', el, 'type', 'radio');
for i := Low(el) to High(el) do
if AnsiSameText(Trim(el[i].parentElement.innerText), 'Да') then
el[i].click;
end; |
| Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
udachnik2 (09.11.2012)
| ||
|
#40
|
|||
|
|||
|
1. Определенно исключено изменение значения поля value на сервере. Я просто в этом уверен.
2. Спасибо за подсказку о подсказке. то есть должно быть так: Код:
Webbrowser1.getElementsByTagName('input',el,'type','radio');
for tip:=0 to 62 do
if el[tip].getAttribute('value', 1)=1 then
el[tip].click;Спасибо большое вам. |