Internet-Explorer Button drücken!!!!

  • Hallo zusammen, ich sitze jetzt schon Stunden an diesem Problem und habe keine Lösung gefunden :(

    Mein Problem ist folgendes:

    /tr><tr><td align="center" class="ress">Bitte gültige Koordinaten eingeben!</td></tr><tr><td>Moskitojets (51 <font size="-1">vorhanden</font>)</td><td> <input type=text name=typ1 SIZE="8" COLS="8" onkeyup="y()" VALUE="0"><input type="button" class="galbutton" value="alle" name="a_typ1" onClick="document.aa.typ1.value=51;y();"></td></tr><tr><td>Schwere Kreuzer (13 <font size="-1">vorhanden</font>)</td><td> <input type=text name=typ5 SIZE="8" COLS="8" onkeyup="y()" VALUE="0"><input type="button" class="galbutton" value="alle" name="a_typ5" onClick="document.aa.typ5.value=13;y();"></td></tr><tr><td>Kontainerschiff (103 <font size="-1">vorhanden</font>, <a href="javascript:set_kontis(103, 24);document.aa.flotten1.click();">24</a> <font size="-1">benötigt</font>)</td><td><input type=text name=typ13 SIZE="8" COLS="8" onkeyup="y()" VALUE="0">
    <input type="button" class="galbutton" value="alle" name="a_typ13" onClick="document.aa.typ13.value=103;y();"></td></tr><tr><td>&nbsp;</td>
    <td><input type="button" class="galbutton" value="Alle Schiffe" name="a_get_all" onClick="get_all_ships(51, 0,0,0,13,0,0,0,0,0,0,0,103,0);document.aa.flotten1.click();"></td></tr><tr><td align="center"><INPUT TYPE="RESET" class="galbutton" VALUE="Formular löschen"></td><td><input type="SUBMIT" name="flotten1" class="galbutton" value="Weiter"></td></tr></table><table align="center"><tr><td class="ress"><script type="text/javascript">
    augabehangar();

    ---------------------------------
    So ich will das dieser Button gedrückt wird und ich hab alle erdenklichen Funktionen des IE ausprobiert, aber nichts funktioniert.

    Ich habs zum Beispiel so probiert:

    Spoiler anzeigen

    $oForm = _IEFormGetObjByName ($oIE, "aa")
    $oQuery = _IEFormElementGetObjByName ($oForm, "flotten1")

    _IEFormElementSetValue ($oQuery, "Alle Schiffe")
    _IEFormSubmit ($oForm)

    oder so


    Spoiler anzeigen

    $oSubmit = _IEGetObjByName ($oIE, "a_get_all")
    _IEAction ($oSubmit, "click")

    Kleine Ergänzung:
    Autoit scheint das Objekt nicht zu finden

    --> IE.au3 V2.4-0 Warning from function _IEFormGetObjByName, $_IEStatus_NoMatch
    --> IE.au3 V2.4-0 Error from function _IEFormElementGetObjByName, $_IEStatus_InvalidDataType

    ähnliches sagt er bei Spoiler 2

    Hoffentlich kann mir einer Helfen, denn ich weiß definitiv nicht weiter.

    Einmal editiert, zuletzt von Volvox (31. August 2008 um 14:03)

  • Du willst einfach nur, dass der Button gedrückt wird ?
    Dann sieh dir doch mal an, was der Button macht:
    get_all_ships(51, 0,0,0,13,0,0,0,0,0,0,0,103,0);document.aa.flotten1.click()

    Damit kann man arbeiten.
    Versuch doch mal:
    _IENavigate( $ie, 'javascript:get_all_ships(51, 0,0,0,13,0,0,0,0,0,0,0,103,0);document.aa.flotten1.click()', 0 )

    Ich weiß nicht, ob das mit 2 Befehlen funktioniert, wenn nicht sag bescheid ;)

    mfg limette

    Edit: Müsste so funktionieren. Getestet mit 'javascript:alert("hallo1");alert("hallo2");, works ^^

    There are only 10 types of people in the world:
    Those who understand binary - and those who don't.

  • hm

    habs gerade mal ausprobiert.
    Dieses _IENavigate gibt mir doch nur eine -1 zurück wenn er es gefunden hat.
    Wie mach ich dann weiter?
    Und (51, 0,0,0,13,0,0,0,0,0,0,0,103,0) ist variabel, d.h die Zahlen werden sich immer ändern.
    Ich versteh auch gar nicht so richtig was document.aa.flotten1.clic() und javascript:get_all_ships so richtig ist.

  • Wenn das variabel ist, dann such dir die Passage doch zB mit
    _StringBetween da raus .. ? :)

    limette

    There are only 10 types of people in the world:
    Those who understand binary - and those who don't.

    • Offizieller Beitrag

    Greif auf die Elemente per Index oder Namen zu.
    So kannst du dir alle Elemente ausgeben lassen:

    [autoit]

    #include <IE.au3>
    $url = 'http://www.autoit.de'
    $oIE = _IECreate($url)
    $oForms = _IEFormGetCollection ($oIE)
    If @error Then
    MsgBox(0, '', 'Keine Formen enthalten')
    Else
    $Index = 0
    For $oForm In $oForms
    ConsoleWrite('Form-Index: ' & $Index & ' / Name: ' & $oForm.Name & @CRLF)
    $oFormElements = _IEFormElementGetCollection($oForm)
    If IsObj($oFormElements) Then
    $IndexElement = 0
    For $oElement In $oFormElements
    ConsoleWrite('Form: ' & $Index & ' /Element: ' & $IndexElement & ' /Name: ' & $oElement.Name & @CRLF)
    $IndexElement += 1
    Next
    EndIf
    $Index += 1
    Next
    EndIf

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

    _IEQuit($oIE)
    Exit

    [/autoit]
  • ok, Problem ist nur, dass es auch bei dem einen nicht funktioniert _IENavigate( $ie, 'javascript:get_all_ships(51, 0,0,0,13,0,0,0,0,0,0,0,103,0);document.aa.flotten1.click()', 0 ) nicht funktioniert.