Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2012.03.18;
Скачать: CL | DM;

Вниз

Как программно нажать на кнопки в WebBrowser"   Найти похожие ветки 

 
мамон   (2011-12-05 10:50) [0]

Кнопки 1,2,3 это вкладки страниц
При наведении на них курсором в место адресса высвечивается:

javascript:__doPostBack("_ctl0$ContentPH$GoodsDG$_ctl14$_ctl1","")

В исходном коде нет type и name кнопок


 
Сергей М. ©   (2011-12-05 10:59) [1]


> В исходном коде нет type и name кнопок


Не трынди.
Так не бывает - кнопка есть, а кода ее создавшего нет.


 
OW ©   (2011-12-05 11:01) [2]

google: javascript twebbrowser delphi
неужели не работает первое?


 
OW ©   (2011-12-05 11:02) [3]


> Так не бывает - кнопка есть, а кода ее создавшего нет.

а если это не кнопка? А только выглядит как кнопка


 
Сергей М. ©   (2011-12-05 11:02) [4]

> В исходном коде нет type и name кнопок

Зато там наверняка есть порядок создания или координаты кнопок - по ним и следует ориентироваться.

Да и строка "_ctl0$ContentPH$GoodsDG$_ctl14$_ctl1" несет инф-цию о кнопке.


 
Сергей М. ©   (2011-12-05 11:03) [5]


> а если это не кнопка?


А по барабану.


 
знайка   (2011-12-05 11:17) [6]


> Да и строка "_ctl0$ContentPH$GoodsDG$_ctl14$_ctl1" несет
> инф-цию о кнопке.
Эта строка к "кнопке", в обшем случае, имеет косвенное отношение.

Вообще определите у кого прописан клик, т.е. элемент документа и кликните его (нет прямого наименования, значит через паренты). Еще проще вызывать __doPostBack напрямую и не заморачиваться.


 
Сергей М. ©   (2011-12-05 11:26) [7]


> Эта строка к "кнопке", в обшем случае, имеет косвенное отношение


Неважно какое, важно чтобы она однозначно идентифицировала "кнопку".
А оно наверняка так и есть при отсутствиии иных идентифицирующих признаков.


 
sniknik ©   (2011-12-05 11:36) [8]

> Еще проще вызывать __doPostBack напрямую и не заморачиваться.
если только ему внутри функции this не нужен, тогда не проще, а тоже самое, элемент определять.


 
мамон   (2011-12-05 13:34) [9]


> Еще проще вызывать __doPostBack напрямую и не заморачиваться.


Акак?


 
Сергей М. ©   (2011-12-05 13:49) [10]

> в место адресса высвечивается:

> javascript:__doPostBack("_ctl0$ContentPH$GoodsDG$_ctl14$_ctl1","")

А чем принципиально "адресс" отличается от того что "высвечивается" ?
Ничем. И то и другое есть URL. А для навигации по указанному URL у компонента TWebRowser имеются методы Navigate и Navigate2, которые тебе наверняка знакомы, иначе бы ты не смог загрузить станицу.


 
мамон   (2011-12-05 13:55) [11]


> А чем принципиально "адресс" отличается от того что "высвечивается"
> ?


Отличается
Внизу есть номера вкладок кликаешь по ним адресс один и тодже а страницы разны

http://www.goodsmatrix.ru/GroupsDescription.aspx?g=1


 
Сергей М. ©   (2011-12-05 14:06) [12]

> адресс один и тодже

Трудно наверно быть бестолковым)

Вот URL 2-й страницы

javascript:__doPostBack("_ctl0$ContentPH$GoodsDG$_ctl14$_ctl1","")

а вот 3-й
javascript:__doPostBack("_ctl0$ContentPH$GoodsDG$_ctl14$_ctl2","")

Найди отличия)


 
мамон   (2011-12-05 14:20) [13]

Ура нашел!

(WebBrowser1.ControlInterface.Document as IHTMLDocument2 as IHTMLDocument2).parentWindow.execScript(
"__doPostBack(""_ctl0$ContentPH$GoodsDG$_ctl14$_ctlX"","""")", "javascript");

X - номер страницы начинается с нулевой


 
мамон   (2011-12-05 14:21) [14]


> Сергей М. ©   (05.12.11 14:06) [12]


Это мне и самому было понятно. я просто незнал как вызвать функцию


 
Сергей М. ©   (2011-12-05 14:31) [15]


> я просто незнал как вызвать функцию


А и знать не надо)


> Ура нашел!


А лежало прямо перед носом)

procedure TfrmMain.Button1Click(Sender: TObject);
begin
 webbrowser1.Navigate("http://www.goodsmatrix.ru/GroupsDescription.aspx?g=1");
end;

procedure TfrmMain.Button2Click(Sender: TObject);
begin
 webbrowser1.Navigate("javascript:__doPostBack("_ctl0$ContentPH$GoodsDG$_ctl14$_c tl1","")");
end;


 
мамон   (2011-12-05 15:07) [16]


> Сергей М. ©   (05.12.11 14:31) [15]


Ух ты! я же незнал что так можно спасибо ограмное!


 
Сергей М. ©   (2011-12-05 15:11) [17]


> мамон   (05.12.11 15:07) [16]


А в  [10] я сам с собой, по-твоему, разговаривал ?)



Страницы: 1 вся ветка

Текущий архив: 2012.03.18;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.008 c
15-1313642062
runer
2011-08-18 08:34
2012.03.18
Как расшарить принтер в WIN7?


8-1219590082
Agent[007]
2008-08-24 19:01
2012.03.18
Direct3D


4-1255090574
DVM
2009-10-09 16:16
2012.03.18
Подскажите функцию Windows 7 и Windows 2008 Server


2-1322683472
Никита1990
2011-12-01 00:04
2012.03.18
Как определить дату БИОС?


2-1323062407
kulakovboris
2011-12-05 09:20
2012.03.18
Утечка памяти на ровном месте