Registriert seit: 6. Apr 2005
10.109 Beiträge
|
Re: Webbrowser Formularfelder überprüfen
27. Jan 2008, 15:08
Hallo Lars,
willst du in allen Input-Feldern einer Form oder eines Document suchen?
Delphi-Quellcode:
function FindInputElement(container: IDispatch; const subText: string): IHTMLInputElement;
var
i: Integer;
ec: IHTMLElementCollection;
dummy: IDispatch;
begin
if Succeeded(container.QueryInterface(IID_IHTMLFormElement, dummy)) then
ec := (container as IHTMLFormElement).tags(' input') as IHTMLElementCollection
else if Succeeded(container.QueryInterface(IID_IHTMLDocument3, dummy)) then
ec := (container as IHTMLDocument3).getElementsByTagName(' input')
else begin
Result := nil;
Exit;
end;
for i := 0 to ec.length do
if i = ec.length then
Result := nil else
begin
Result := ec.item(i, null) as IHTMLInputElement;
if AnsiContainsText(Utf8ToAnsi(Result.value), subText) then
Break;
end;
end;
Testen kannst du so:
Delphi-Quellcode:
var
ie: IHTMLInputElement;
begin
// find first element in document
with WebBrowser do
ie := FindInputElement(Document, 'b');
// find first element in some form
with WebBrowser.Document as IHTMLDocument2 do
ie := FindInputElement(forms.item(0, null), 'b');
end;
Grüße vom marabu
|
|
Zitat
|