Funktionen, Eingaben und und und....bitte mal reinschaun

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Funktionen, Eingaben und und und....bitte mal reinschaun

    Hallo!

    Habe ein kleines Programm geschrieben.
    Hab es ein wenig abgespeckt, damit man sieht was ich machen will:

    <html>
    <body>

    <script language="javascript">
    function Sortiere(streetx) {
    var street01,box,tour,zusteller;
    street01=streetx;
    switch (street01) {

    case "ost":
    box=111;
    tour=222;
    zusteller=333;
    break;

    case "west":
    box=444;
    tour=555;
    zusteller=666;
    break;

    default:
    box=999;
    tour=999;
    zusteller=999;
    break;
    }}
    </script>

    <form name="Streeteingabe" action="" onSubmit="Sortiere(document.Streeteingabe.streetx.value)">
    <input type="text" name="streetx" size="20" tabindex="1">
    <input type="button" value="go"
    onClick="Sortiere(document.Streeteingabe.streetx.value)">
    </form>

    <table border="1" width="100%" id="table1">
    <tr>
    <td>Spalte 1</td>
    <td>Spalte 2</td>
    <td>Spalte 3</td>
    </tr>
    </table>

    </body>
    </html>
    Aaaalso:
    Man gibt einen Wert in das Eingabefeld. Der Wert wird gecheckt ob ost oder west, und je nach dem ob ost oder west (kommen später noch ca. 300 andere Werte mit rein) sind die drei Variablen "box" "tour" und "zusteller" definiert.
    Soweit so gut.
    Nun will ich, dass nach dem Klick auf den Go-Button bzw. nach drücken der Entertaste in Spalte 1 der Wert der Variable "box", in Spalte 2 der Wert der Variable "tour" und in Spalte 3 der Wert der Variable "zusteller".
    Dabei gibt es 2 Probleme (für mich sind es zumindest Probleme *g*):
    1. An einem anderen Ort in der HMTL-Datei eine Variable anzeigen lassen, welche ganz woanders definiert wurde.
    2. Dem Script klarmachen, dass er die Werte der Variablen erst schreiben soll, wenn der Button oder Enter gedrückt wurde, da er sie ja erst nach der Eingabe der Daten hat.

    Wäre ganz toll, wenn ihr mir hier weiterhelfen könntet!

    Viele Grüße

  • #2
    Setzte am Ende Deiner Funktion etwas in der Art:
    ...
    tour=999;
    zusteller=999;
    break;
    }
    document.anzeige.spalte1.value=box;
    ...
    }

    Das machst Du analog für die anderen Variablen.

    Nun setzt Du um Deine Tabelle ein neues Formular und für die Spalten das entsprechende input-Feld.
    Das sieht dann in etwa so aus:

    <form name="anzeige">
    <table border="1" width="100%" id="table1">
    <tr>
    <td><input type="text" name="spalte1" size="20"></td>
    ...
    </tr>
    </table>
    </form>

    So würde ich es mal versuchen.

    Gruß
    Stephan
    [font=Verdana]SteGaSoft
    Theorie ist, wenn jeder weiß, wie es geht, aber nichts funktioniert, Praxis ist, wenn alles funktioniert und niemand weiß warum.
    [/font]

    Kommentar


    • #3
      Vielen Dank!

      So wirds hoffentlich was.....wenn nicht hörst du von mir

      Kommentar


      • #4
        Vielen dank!!

        Funktioniert perfekt!!


        Ein Problem hab ich noch:

        Wenn ich auf den Button klicke, funzt alles wunderbar.
        Was muss ich verändern am Quellcode, dass auch beim drücken der Enter-Taste das gleiche passiert wie beim Button-Klick?

        Kommentar


        • #5
          <form ... onSubmit="...">

          Kommentar


          • #6
            Hab ich doch drin

            Kommentar


            • #7
              Imho löst das Enter-Drücken den gleichen Event aus, wie der Klick auf den Submit-Button, nämlich den Submit-Event. Ich weiß, das das Senden abgebrochen wird, wenn die auf den Event hin aufgerufene Funktion false zurückgibt.
              Probiers mal mit
              return true;
              am Ende der aufgerufenen Funktion.

              Kommentar


              • #8
                Bringt nix.
                Es passieren folgende Dinge beim Enter-drücken:
                - Der eingegebene Wert wird an die URL angehängt --> das soll nicht passieren!
                - Das "Ergebnis" wird in den Boxen angezeigt, aber nur für ne halbe Sekunde oder so


                EDIT: Also das erste hab ich in den Griff bekommen indem ich noch method="post" eingefügt hab.....
                Das "Ergebnis" wird allerdings immer noch nur kurz angezeigt

                Kommentar


                • #9
                  Mal allgemein: OnSubmit rufst du eine Methode auf, die nicht irgendwelche Variablen setzt sondern die Werte der Input-Felder (kannst du hidden definieren) und dann entweder selbst submit() macht oder true zurückgibt - dann macht die Form den Submit.

                  Oder du willst gar nicht senden, sondern an einer Stelle im Dokument diese Werte anzeigen. Dann mußt du dort ein document.write() machen.

                  Kommentar


                  • #10
                    Ja , weis ich so ziemlich....nur mit document.write wirds erst recht nix....

                    Das Script läuft im Moment perfekt!

                    Bis auf diese kleinigkeit, dass beim Button-Klick aller perfekt geht und beim Enter-Klick nur ganz kurz

                    Kommentar


                    • #11
                      onSubmit="sortiere(...);return false;"
                      I don't believe in rebirth. Actually, I never did in my whole lives.

                      Kommentar


                      • #12
                        Ok, jetzt funktionierts.

                        Noch 1 Frage:

                        Wie mach ich, dass nach dem Submit des Formulars das Textfeld geleert wird?
                        Zuletzt geändert von crayzee; 03.07.2005, 16:11.

                        Kommentar


                        • #13
                          antwort auf 1. und 2.: mal in selfhtml nachlesen!
                          I don't believe in rebirth. Actually, I never did in my whole lives.

                          Kommentar


                          • #14
                            wie du siehts hab ich 2. in den griff bekommen.....

                            Zu erstens: Hab SelfHtml durchsucht, aber wahrscheinlich am falschen Platz! Hab überhaupt nix passendes gefunden! Wo genau soll ich suchen?
                            Oder gib mal n stickwort, ne Syntax oder so

                            Kommentar


                            • #15
                              Original geschrieben von crayzee
                              Zu erstens: Hab SelfHtml durchsucht, aber wahrscheinlich am falschen Platz! Hab überhaupt nix passendes gefunden! Wo genau soll ich suchen?
                              Oder gib mal n stickwort, ne Syntax oder so
                              du arbeitest doch bereits mit dem inhalt von formularfeldern, in dem du ihre value-eigenschaft ausliest.

                              die lässt sich nicht nur lesen, sondern auch (über)schreiben - auch mit einem leerstring.
                              I don't believe in rebirth. Actually, I never did in my whole lives.

                              Kommentar

                              Lädt...
                              X