ovElements := WebBrowser1.OleObject.Document.forms.item(0).elements;
for i := 0 to (ovElements.Length - 1) do
if (ovElements.item(i).tagName = 'input') and
(ovElements.item(i).type = 'hidden') and
(ovElements.item(i).value = '1') then
ovElements.item(i).Click;
или
Код:
ovElements := WebBrowser1.OleObject.Document.forms.item(0).elements;
for i := 0 to (ovElements.Length - 1) do
if (ovElements.item(i).tagName = 'input') and
(ovElements.item(i).type = 'submit') and
(ovElements.item(i).value = 'Купить') then
ovElements.item(i).Click;
Вылетает ошибка : [Ссылки могут видеть только зарегистрированные пользователи. ]
Так это же скрытый элемент 0_0
Может нужно эту нажать ?
<input type="submit" value="Купить" style="height: 30px; margin-top:10px;">
А лучше - киньте часть кода с кнопками.
Добавлено через 14 минут
Я тут задействовал свои экстрасенсорные способности и пришел к выводу:
1) у нас есть невидимые элементы с номерами итемов для каждой кнопки покупки
2) если так, то стоит найти hidden input с выбранным номером и дело в шляпе
3) после этого просто обратиться к следующему элементу массива
Реализация для данного задания:
Код:
procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant);
var
input:OleVariant; i:integer;
begin
input:=WebBrowser1.OleObject.document.all.tags('input');
for i:=0 to input.length-1 do
if (input.item(i).type='hidden') and (input.item(i).value='1') then
begin
input.item(i+1).Click;
end;
end;
И как истинный тру кодер НЕпрограммист:"Должно работать"
Последний раз редактировалось Fix.ME; 18.07.2014 в 18:54.
Причина: Добавлено сообщение
Добавлено через 14 минут
Я тут задействовал свои экстрасенсорные способности и пришел к выводу:
1) у нас есть невидимые элементы с номерами итемов для каждой кнопки покупки
2) если так, то стоит найти hidden input с выбранным номером и дело в шляпе
3) после этого просто обратиться к следующему элементу массива
Реализация для данного задания:
Код:
procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant);
var
input:OleVariant; i:integer;
begin
input:=WebBrowser1.OleObject.document.all.tags('input');
for i:=0 to input.length-1 do
if (input.item(i).type='hidden') and (input.item(i).value='1') then
begin
input.item(i+1).Click;
end;
end;
И как истинный тру кодер НЕпрограммист:"Должно работать"