Javascript: Nach "onclick" Ausgabe in ein bestimmtes Feld schreiben



  • Hallo,

    habe ein Formular mit verschiedenen Buttons etc...

    Wenn der User nun auf den "absenden"-button klickt, soll das Ergebnis (also die Auswertung) des Formulars direkt darunter geschrieben werden..

    |-------------------|
    | Formular          |
    | <> <> <> <>       |
    | <> <> <> <>       |
    | <> <> <> <>       |
    | <> <> <> <>       |
    | <> <> <> <>       |
    |-------------------|
    | Auswertung        |
    |                   |
    |-------------------|
    

    Ich hatte folgendes (ohne Erfolg) versucht:

    // Im Java\1:
    
    if (Fall a)
        {
        document.Empfehlung.write("<P>Bla bla bla!</p>");
        }
        else
        {
        document.Empfehlung.write("<P></p>");
        }
    
    // Im HTML-CODE
    
    <INPUT type="text" name="Empfehlung" value="">
    

    So, dass eben in diesem Input-Feld geschrieben wird.

    Kann mir jemand helfen?

    Vielen Dank schonmal



  • getElementById() könnte da helfen..



  • ok, SelfHTML bietet dazu ja ein Beispiel an.

    Jedoch ist es für mich noch unverständlich das auf mein Formular zu übertragen:

    Ich verstehe nicht, wie ich getElementsbyID() mit document.write verknüpfen soll und das ganze auch noch in einer If-Abfrage 😕



  • Nachtrag:

    und zwar deswegen unverstädnlich, weil ich es folgendermaßen nicht hinbekomme:

    if(Fall a)
        {
    	document.getElementById("Empfehlung").value = document.write("<P>Bla</p>");
        }
        else
        {
        }
    

    😞



  • Du musst deinem Formular einen Namen geben, oder über das form-Array drauf zugreifen.
    Also <form name="bla" ...>...</form>
    Dann kannst du auf Empfehlung mit
    document.forms.bla.Empfehlung.value="bla"
    oder über das Array zugreifen. Ist es das erste Formular im Dokument, dann
    document.forms[0].Empfehlung.value="bla"

    Überlege dir mal wo da wohl der Fehler liegt 🙄

    if(Fall a)
        {
        document.getElementById("Empfehlung").value = document.write("<P>Bla</p>");
        }
        else
        {
        }
    

    Welchen Rückgabewert hat document.write ???



  • ºgrimmsenº® schrieb:

    Du musst deinem Formular einen Namen geben, oder über das form-Array drauf zugreifen.
    Also <form name="bla" ...>...</form>
    Dann kannst du auf Empfehlung mit
    document.forms.bla.Empfehlung.value="bla"
    oder über das Array zugreifen. Ist es das erste Formular im Dokument, dann
    document.forms[0].Empfehlung.value="bla"

    Überlege dir mal wo da wohl der Fehler liegt 🙄

    if(Fall a)
        {
        document.getElementById("Empfehlung").value = document.write("<P>Bla</p>");
        }
        else
        {
        }
    

    Welchen Rückgabewert hat document.write ???

    *hüstel*

    Rückgabewert?

    SelfHTML schrieb:

    <html><head><title>Test</title>
    </head><body>
    <script type="text/javascript">
    DeinName = prompt("Bitte Deinen Namen angeben:", "Name");
    document.write("<b>Hallo " + DeinName + "<\/b>");
    </script>
    </body></html>
    

    Ist doch auch kein Rückgabewert zu sehen, oder? 😮 😕



  • Hä?
    Im SelfHTML-Beispiel führst du ein Kommando aus (auf das Dokument schreiben).
    In deiner von mir angeführten Interpretation nutzt du document.write für eine Zuweisung, was nicht möglich ist.
    Hast du's mit dem form-Array probiert?



  • ºgrimmsenº® schrieb:

    Hä?
    Im SelfHTML-Beispiel führst du ein Kommando aus (auf das Dokument schreiben).
    In deiner von mir angeführten Interpretation nutzt du document.write für eine Zuweisung, was nicht möglich ist.
    Hast du's mit dem form-Array probiert?

    Ich hab jetzt folgendes gemacht

    Javascript schrieb:

    document.getElementById("Empfehlung").value = "Text hier, Text da!";

    und dann später in HTML

    <p id="Empfehlung"></p>
    

    Und zwar im selben Formular!!
    Also beides innerhalb <form .... !

    Wenn ich jetzt das Formular teste (also alles angebe und den Absenden-Button drücke), dann erscheinkt KEINE!! Fehlermeldung. Aber ausgegeben wird auch noch nix...



  • Ein Paragraph ist kein Formelement. In deiner ersten Frage wolltest du es in
    ein Input schreiben. Dann muss was anderes her!
    Das sollte dir helfen. Läuft aber leider nur auf neueren Browsern:
    http://de.selfhtml.org/javascript/objekte/all.htm#inner_html



  • ok,

    ich hab das jetzt z.T. gelöst, in dem ich statt <p></p>
    einfach einen Textbereich mit entsprechender ID angelegt habe

    <TEXTAREA name="Empfehlung" id="Empfehlung" rows=10 cols=40></Textarea>
    

    Jetzt muss ich nur noch dahinter steigen, dass er die einzelnen Auswertungen nicht ständig überschreibt (momentan steht immer nur die letzte Auswertung da, deswegen gehe ich davon aus, dass er alle vorherigen immer überschrieben hat), sondern die eben alle untereinander in die Textarea schreibt...


Log in to reply