![]() |
|
Модераторы: Snowy, Poseidon, MetalFan |
![]()
|
|
| Yuran_ |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 22.2.2008 Репутация: нет Всего: нет |
На странице есть tedit с кнопкой запуска js. В TEdit нужно ввести артикул например 4850901 и нажать на кнопку. Результатом работы скрипта будет список городов в которых есть такая запчасть. Мне нужно сделать так чтобы: на форве в тэдит ввожу артикул и жму на кнопку, а моя прога коннектилась бы на сайт, запускала бы скрипт а результат выводился бы в тмемо. Я так понял что с помощью indy этого не сделать никак. Нашел вот это
function ExecuteScript(doc: IHTMLDocument2; script: string; language: string): Boolean; var win: IHTMLWindow2; Olelanguage: Olevariant; begin if doc <> nil then begin try win := doc.parentWindow; if win <> nil then begin try Olelanguage := language; win.ExecScript(script, Olelanguage); finally win := nil; end; end; finally doc := nil; end; end; end; но как это прикрутить к моей проге не знаю. вот код страницы со скриптом <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <LINK href="/spare.css" rel=stylesheet type=text/css> <meta http-equiv="Content-Type" content="text/html; charset=Windows-1251"> <TITLE> Остатки </TITLE> <script type='text/javascript'> var req=null; var console=null; var READY_STATE_UNINITIALIZED=0; var READY_STATE_LOADING=1; var READY_STATE_LOADED=2; var READY_STATE_INTERACTIVE=3; var READY_STATE_COMPLETE=4; function sendRequest(){ req=initXMLHTTPRequest(); var s = document.getElementById("sn"); if (req){ req.onreadystatechange=onReadyState; req.open("GET","http://accentservice.kiev.ua/mod_perl/spare/article.pl",true); req.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); req.send("sn="+s.value); } } function initXMLHTTPRequest(){ var xRequest=null; if (window.XMLHttpRequest){ xRequest=new XMLHttpRequest(); }else if (window.ActiveXObject){ xRequest=new ActiveXObject("Microsoft.XMLHTTP") } return xRequest; } function onReadyState(){ var ready=req.readyState; var data=null; if (ready==READY_STATE_COMPLETE){ data=req.responseText; }else{ data="<p> <img src=await.gif>" } toConsole(data); } function toConsole(data){ if (console!=null){ console.innerHTML=data; } } window.onload=function(){ console=document.getElementById('console'); } </script> </HEAD> <BODY> <p>Артикул: <input type="text" maxlenght="12" size="13" name="sn" value="" id="sn"> <input name="SUBMIT" alt="" value="Найти!" src="searchbutton.gif" style="width: 24px; height: 24px; " type="image" onClick="sendRequest();"><br> <div id='console'></div> </BODY> </HTML> результат выполнения вот: Артикул: 4850901 Наименование: дисплей N-3250СЦ Кол-во Дата Харьков 60 20.02.2008 Основной склад 33 20.02.2008 Одесса 27 20.02.2008 Ровно 26 20.02.2008 Запорожье 23 20.02.2008 Киев 22 20.02.2008 мне надо все это дело в tmemo загнать! Спасибо. |
|||
|
||||
| December |
|
|||
![]() Antitheorist ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4423 Регистрация: 14.8.2002 Где: Харьков Репутация: 1 Всего: 57 |
TWebBrowser тебе поможет
|
|||
|
||||
| Yuran_ |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 22.2.2008 Репутация: нет Всего: нет |
Это я уже понял. НО КАК!! ???? Хоть примерчий какой дайте плз.
|
|||
|
||||
| December |
|
|||
![]() Antitheorist ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4423 Регистрация: 14.8.2002 Где: Харьков Репутация: 1 Всего: 57 |
Смотри в DRKB пример работы с TWebBrowser.
|
|||
|
||||
| Yuran_ |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 22.2.2008 Репутация: нет Всего: нет |
function ExecuteScript(doc: IHTMLDocument2; script: string; language: string): Boolean;
var win: IHTMLWindow2; Olelanguage: Olevariant; begin if doc <> nil then begin try win := doc.parentWindow; if win <> nil then begin try Olelanguage := language; win.ExecScript(script, Olelanguage); finally win := nil; end; end; finally doc := nil; end; end; end; Это я уже находил. Но я не спец и мне трудно приспособить этот код к моей программе. Вы можете сделать наброски? Буду очень признателен. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Сети" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Сети | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |