Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Problema para clicar no botão sem ID delphi.


Kali

Pergunta

Olha eu novamente .

Então pessoal estou tendo um problema ao clicar no botão do TWebBrowser no delphi .

No website está da seguinte forma:

<div id="submit-row" class="form-row">
  <div class="input"><input class="btn-dark" type="submit" value="Donate"/>
  </div>
</div>
</form>

Então, Eu já tentei fazer das seguintes formas:

Procedure ClicaBottao;
var
  Elements: OleVariant;
  i: Integer;
begin
with Form1 do
begin
  WebBrowser1.Silent := true;
  Elements := WebBrowser1.OleObject.Document.forms.item(0).elements;
  for i := 0 to (Elements.Length - 1) do
    if (Elements.item(i).type = 'submit') then
        Elements.item(i).Click;
end;
end;

Porém ele da erro e não clica no botão.

Já tentei também fazer da seguinte forma:

WebBrowser1.OleObject.Document.all.Item('submit-row',0).Click;

Porém ele não clica no botão.

Queria saber como faço para clicar nesse botão ta dificil aqui .

abrçs

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

ok... fiz um teste aqui com o endereço do website .... tem que ser assim

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, OleCtrls, SHDocVw;

type
  TForm1 = class(TForm)
    WebBrowser1: TWebBrowser;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
   // Entrar na pagina
   WebBrowser1.Silent := true;
   WebBrowser1.Navigate('https://securessl.cato.org/support/donate');
end;

procedure TForm1.Button2Click(Sender: TObject);
var  Elements: OleVariant;
  i: Integer;
begin
  // Evitar erros de Scripts
  WebBrowser1.Silent := true;

  Elements := WebBrowser1.OleObject.Document.forms.item(0).elements;
  for i := 0 to (Elements.Length - 1) do
    begin

       if (Elements.item(i).tagName = 'INPUT') and
          (Elements.item(i).type = 'submit') and
          (Elements.item(i).Value = 'Donate') then
           Elements.item(i).Click;
    end;
end;

end.

abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...