javascript funktion zum arbeiten bewegen

  • also ich hab zurzeit folgendes problem ich gebe mit auto IT bestimmte werte in ein form-objekt ein(das funktioniert!) so jetzt kommt das problem wenn ich einen bestimnmten wert eingebe dann startet normalerweise über normaler eingabe von browser eine javascript funktion die bestimmte werte berechnet ich brauche einen davon der dann auch in einem feld angezeigt wird(also könnt ich einfach den inhalt des feldes auslesen) müsste aber zuvor die funktion starten damit irgendwas drin steht..
    hier einmal der quellcode...

    Spoiler anzeigen


    <form action="weiter.php" method="post" name="formular">
    <input class="button" name="count[13]" size="2" onkeyup="calculate()" type="text">
    <script language=javascript>
    function calculate()
    {<---berechne einen wert der später gebraucht wird--->}
    <input type=text class=readonly readonly name=need size=6>

    also noch kurz zur erläuterung wenn ich in dem butten mit dem namen "count[13]" etwas reinschreibe dann startet die funktion calculate() (genau dieser "start" muss mit autoIt realisiert werden) dann wird ein wert berechnet der später in dem letzten dingsda gespeichert wird...bereitet des mir probleme wenn des feld was ausgelesen werden soll von der class "readonly" ist???

    THX wenn mir jemand weiter helfen könnte...
    ich brauch nur die infos wie ich die funktion anspreche oder zum arbeiten motiviere^^

  • nicht so schlimm..hat mich nur gewundert dass überhaupt keiner geantwortet hat^^ naja wenn du ne lösung hast hab dich ja bei icq geaddet :) posten kannste auch ist egal wie

  • hallo
    probeier mal das :

    [autoit]

    #cs ----------------------------------------------------------------------------
    AutoIt Version: 3.2.0.1
    Author: Uli Effinger
    #ce ----------------------------------------------------------------------------
    $url = @DesktopDir&"\test.html"
    #include "IE_T2.0_4.au3"
    $oIE = _IECreate ($url,0,1)
    $o_form = _IEFormGetObjByName($oIE, "formular")
    $o_count = _IEFormElementGetObjByName($o_form, "count[13]")
    $o_need = _IEFormElementGetObjByName($o_form, "need")

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

    ; Set field values and submit the form
    $o_count.Value = "0"
    $wert = _IEFormElementGetValue ($o_need)

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

    _IEQuit ($oIE )

    [/autoit]


    wenn es nicht geht kannst du uns den ganzen code von JavaScript posten?

  • muh_kuh das hab ich ausprobbiert ging aber nicht da die schicke funktion meine wert erst gar nicht berechnet hat also war das feld leer
    @good-food geht leider auch nicht da die funktion auf bestimmte werte in einer datenbank zugreift die jenach user unterschiedlich ist -.- (soll ja dann nicht nur für mich sein das script)...
    ne lösung wär auch noch dass ich der maus sage zu welchen koordis und dann klick und per send befehl die werte eintrage ABER das würd ich nur als allerletztes machen!
    und muh_kuh denke mal #include "IE_T2.0_4.au3" => #include "<IE.au3>"hab die andere gar nicht...

  • Zitat

    Original von snoozer
    muh_kuh das hab ich ausprobbiert ging aber nicht da die schicke funktion meine wert erst gar nicht berechnet hat also war das feld leer
    und muh_kuh denke mal #include "IE_T2.0_4.au3" => #include "<IE.au3>"hab die andere gar nicht...


    hallo
    kannst du den Java Script Code posten ?
    oder die Seite zum Testen in Internet ?

  • hier nur die javascript funktion....

    Spoiler anzeigen


    PS:code gekürzt weil auch unnötiges drinnsteht....
    vielleicht könnte ich auch mit get document.formular.capacity.value oder sowas in der art arbeiten....

  • ich glaub ich hab der englischen seite grade eine lösung gefunden...

    [autoit]


    ;<select name="Region" size="10" onChange="PopulateSecondPane(this.form, this.form.Region.options[this.form.Region.selectedIndex].value);" ID="Select1">

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

    #cs
    The values in a second Select, Option field change based on the OnChange event
    getting fired by the first one. Changing the value via script doesn't trigger the event,
    but fortunately this is pretty easy to do using the .fireEvent method. This example sets
    the value of the Region field to North America (i.e. 11) and then fires the OnChange event
    for the field which triggers the Javascript that updates the second field. This example also
    demonstrates a simple method of attaching to an existing browser already pointed to the
    desired site if it exists and creating a new one if not.
    #ce
    #include <IE.au3>

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

    $sUrl = "http://creative.com/language.asp?sDestUrl=/support/downloads"

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

    $oIE = _IEAttach($sUrl, "url")
    If not isObj($oIE) Then
    $oIE = _IECreate()
    _IENavigate($oIE, $sUrl)
    EndIf

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

    $oForm = _IEFormGetObjByName($oIE, "Form1")
    $oRegion = _IEFormElementGetObjByName($oForm, "Region")
    _IEFormElementSetValue($oRegion, "11")
    $oRegion.fireEvent("OnChange")

    [/autoit]


    müsste das ganze jetzt schnell ausprobieren.....
    [edit]
    UH YEAH es geht!!!! muss nur anstatt $oRegion.fireEvent("OnChange") $oRegion.fireEvent("OnKeyUp") schreiben weil ich ja nen bisschen anderen quelltext hab...dieses problem wäre gelöst ich danke hiermit allen die versucht haben mir zu helfen ;) THX :keks: