Problem mit IE.au3

  • Guten Tag
    Ich habe folgendes Problem

    Auf einer Website sind mehrere Formulare mit dem gleichen Namen

    Wenn ich mit _IEFormElementGetObjByName nun nach diesem Namen suche, gibt mir die Funktion immer das erste Formular zurück, was gefunden wird.
    In der Hilfe steht, das wenn ich den Index der Funktion auf -1 setze, wird mir eine "collection of the specified Form Elements" zurückgegeben.
    Das versteh ich nur leider nich so recht, bzw weiß nicht inwiefern mir das weiterhelfen soll.

    Ich möchte also wissen, ob es eine Möglichkeit gibt, die 2te oder 3te oder 4te Form mit dem gleichen Namen anzusprechen.

    Danke für die Hilfe

  • Ich kann jetzt auch falsch liegen:

    [autoit]

    _IEFormGetObjByName($oIE,"formular",0) ;spricht das erste,
    _IEFormGetObjByName($oIE,"formular",1) ; zweite
    _IEFormGetObjByName($oIE,"formular",2) ; dritte Formular mit dem Namen "Formular" an.

    [/autoit]

    wenn ich mit der IE.au3 und Forms arbeite schau ich mir die alle zuerst im FF an. Stichwort hier ist "Web Developer Toolbar".
    Einfach Rechtsklick auf die Seite -> Web developer -> Formulare -> Formularinformationen Anzeigen.

    Hoffe ich konnte ine wenig helfen

    • Offizieller Beitrag
    [autoit]

    $ret = _IEFormElementGetObjByName($oIE, 'FormName', -1)
    ConsoleWrite('Es existieren ' & @extended & ' Formen dieses Namens.' & @CRLF)
    ; die einzelnen Elemente können über Index '0' bis '@extended -1' angesprochen werden

    [/autoit][autoit][/autoit][autoit]

    ; oder in einer Schleife durchlaufen:
    For $Form In $ret
    ; $Form ist jetzt das temporäre Objekt, das auf das aktuelle Formelement verweist
    Next

    [/autoit]