Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.11.2009, 00:10   #1
Replicant
Форумчанин
 
Аватар для Replicant
 
Регистрация: 17.08.2009
Сообщений: 139
По умолчанию Автозаполнение форм в WebBrowser

Вот пытаюсь сделать автозаполнение форм, для начала авторизацию, но почему то криво работает.
Вот код кнопки заполнения:
Код:
procedure TForm1.SpeedButton7Click(Sender: TObject);
var ovElements: OleVariant;
    i,len: Integer;
    name,tp:string;
    idLogin,idPass,idButton:integer;
begin
 ovElements := WB.OleObject.Document.forms.item(0).elements;
 len := ovElements.Length;
 for i:=0 to (len-1) do
  begin
   name := ovElements.item(i).Name;
   tp := ovElements.item(i).type;
   if ( name = 'login_name') and ( tp = 'text') then idLogin := i;
   if ( name = 'login_password') and ( tp = 'password') then idPass:=i;
   if ( name = 'image') and ( tp = 'image') then idButton := i;
 end;
 ovElements.item(idLogin).value := Login.Text;
 ovElements.item(idPass).value := Pass.Text;
 ovElements.item(idButton).Click;
end;
Код формы на 1-м сайте:
Код:
<form method=post onsubmit="javascript: showBusyLayer()">
                <tr align="left" valign="middle">
                  <td width="50" height="25" align="right">Логин&nbsp;</td>
                  <td height="25" align="right"><input type="text" name="login_name" style="width:100px; height:20px; font-family:tahoma; font-size:11px; border:1px solid #E0E0E0 "></td>
                </tr>

                <tr align="left" valign="middle">
                  <td width="50" height="25" align="right">Пароль&nbsp;</td>
                  <td height="25" align="right"><input type="password" name="login_password" style="width:100px; height:20px; font-family:tahoma; font-size:11px; border:1px solid #E0E0E0 "></td>
                </tr>
                <tr align="left" valign="middle">
                  <td width="50" height="25" align="right">&nbsp;</td>
                  <td height="25" align="right"><div style="padding-top:2px; padding-left:0px;">
                    <input onclick="submit();" name="image" type="image" src="/templates/57/images/send.png">

					<input name="login" type="hidden" id="login" value="submit">
                    </div></td>
                </tr></form>
Код формы на 2-м сайте:
Код:
<form method=post onsubmit="javascript: showBusyLayer()">
                <tr>

                  <td height="25" colspan="2">&nbsp;Логин<br />
                    <input type="text" onfocus="this.value=''" value="******" name="login_name" style="width:140px; height:17px; font-family:tahoma; FONT-WEIGHT: bold; background-color:#C5DBF3; color:000000; font-size:10px;">                  </td></tr>
                <tr align="left" valign="middle">
                  <td height="25" colspan="2" align="left">&nbsp;Пароль<br />
                    <input name="login_password" type="password" style="width:140px; height:17px; font-family:tahoma; FONT-WEIGHT: bold; background-color:#C5DBF3; color:BLACK; font-size:10px;" onfocus="this.value=''" value="******" /></td></tr>
                <tr align="left" valign="middle">
                  
                  <td width="80" height="30"><div style="padding-top:12px; padding-left:0px;"><a href="http://0-day.in/index.php?do=register"><b>Регистрация</b></a><br /><a href="http://0-day.in/index.php?do=lostpassword"><b>Вернуть пароль</b></a></div></td>

                  <td width="30">
				  <div style="padding-top:12px;">
                    <input onclick="submit();" name="image" type="image" src="/templates/PureGlassVista/images/login.png">
                      <input name="login" type="hidden" id="login" value="submit">
                  </div>
				  </td>
                </tr></form>
В первом случае форма заполняется нормально, но кнопка не нажимается, во втором вобще ничего не происходит, хотя разници не вижу. Помогите разобраться!!!
Replicant вне форума Ответить с цитированием
Старый 04.11.2009, 21:12   #2
Replicant
Форумчанин
 
Аватар для Replicant
 
Регистрация: 17.08.2009
Сообщений: 139
По умолчанию

Вобщем оказывается код кнопки хватает первую попавшуюся форму и анализирует ее поля "input". В моем случае та 2-м сайте форма для авторизации была второй поэтому в нее ничего и не вводилось. Но кнопка так и не нажимается, может кто подскажет?
И еще как заполнять поля типа "textarea"? код кнопки шерстит только "input" поля.
Replicant вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заполнение форм WebBrowser No_Mosk Работа с сетью в Delphi 5 04.05.2011 06:36
Автозаполнение. ksu25 Microsoft Office Excel 3 06.10.2009 18:50
Автозаполнение макросом RGZZ Microsoft Office Excel 2 24.09.2009 12:57
Автозаполнение! ANT35 Microsoft Office Access 1 30.10.2008 08:24
Автозаполнение форм в WebBrowser CoDeR Работа с сетью в Delphi 7 28.09.2008 21:58