Bei Eingabe die Werte in js-Variablen ablegen und dann php übergeben

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

  • #16
    in so einem fall betreibt man ein vernünftiges debugging

    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #17
      Hi,

      für heute reicht es mir, ich krieg keinen vernünftigen Gedanken mehr zusammen. Morgen früh geht's mir frischem Elan an die Sache und dann werd ich das hoffentlich hinkriegen.



      Gruß

      Michael
      Gruß

      Michael

      Kommentar


      • #18
        Guten Morgen,

        nun sitze ich schon wieder ne Zeitlang vor der Kiste, aber der Erfolg will sich nicht einstellen. Ein print_r ($_GET); in der aufgerufenen Datei bringt mir nur ein Array(), heisst es wird gar nichts übergeben.
        Somit kann der Fehler ja nur noch in der aufrufenden Datei liegen, sprich das die var im js nicht gebildet werden bzw. der Aufruf für das popup falsch ist. Soweit hätten wir das Ganze schonmal eingekreist.

        Frage ist, es handelt sich hier um meine ersten Schritte mit js, mit

        var hersteller = document.getElementByID("hersteller").value;

        wird doch beim Klick auf den Button, der das popup holt, die Werte die im Formular stehen in die Variablen geschoben. Richtig?

        Wenn ich aber mit alert(hersteller); oder document.write(hersteller); diese auszugeben passiert nichts, heisst es gibt keine Ausgabe und ich gehe mal davon aus, das somit auch die Variable leer ist.

        Warum nur ?


        Gruß

        Michael
        Gruß

        Michael

        Kommentar


        • #19
          Wie sieht deine JS-Codes zur Zeit aus. Wo hast du alert() eingebaut?

          Kommentar


          • #20
            Hallo,

            es ist zwar wahrscheinlich wahnsinnig umständlich was ich da gemacht habe, aber es funktioniert. Hier mal das Script

            Code:
            <script type="text/javascript">
            function init()
             {
            	var hersteller = document.getElementById("hersteller");
            	hersteller.onfocus = watchKey10;
            	hersteller.onblur = offKey;
            
            	var modell = document.getElementById("modell");
            	modell.onfocus = watchKey11;
            	modell.onblur = offKey;
            
            	var dekor = document.getElementById("dekor");
            	dekor.onfocus = watchKey12;
            	dekor.onblur = offKey;
            
            	var farbe = document.getElementById("farbe");
            	farbe.onfocus = watchKey13;
            	farbe.onblur = offKey;
            
            	var groesse = document.getElementById("groesse");
            	groesse.onfocus = watchKey14;
            	groesse.onblur = offKey;
            }	
            
            
            
            function watchKey10()
            {
            	this.onkeyup = function()
            	 {
            		hersteller = document.getElementById("hersteller");
            		hersteller.value = this.value;
            	}
            }
            
            
            function watchKey11()
            {
            	this.onkeyup = function()
            	 {
            		modell = document.getElementById("modell");
            		modell.value = this.value;
            	}
            }
            
            
            function watchKey12()
            {
            	this.onkeyup = function()
            	 {
            		farbe = document.getElementById("farbe");
            		farbe.value = this.value;
            	}
            }
            
            
            function watchKey13()
            {
            	this.onkeyup = function()
            	 {
            		dekor = document.getElementById("dekor");
            		dekor.value = this.value;
            	}
            }
            
            
            function watchKey14()
            {
            	this.onkeyup = function()
            	 {
            		groesse = document.getElementById("groesse");
            		groesse.value = this.value;
            	}
            }
            
            
            function FensterOeffnen (Adresse)
            {
            	
            	var hersteller = document.getElementById("hersteller").value;
            	
            	var modell = document.getElementById("modell").value;
            		
            	var farbe = document.getElementById("farbe").value;
            		
            	var dekor = document.getElementById("dekor").value;
            		
            	var groesse = document.getElementById("groesse").value;
            	
            	Adresse = Adresse+'?hersteller='+hersteller+'&modell='+modell+'&farbe='+farbe+'&dekor='+dekor+'&groesse='+groesse;
            	MeinFenster = window.open(Adresse, "Zweitfenster", "width=600,height=400,left=300,top=200");
            	MeinFenster.focus();
            }
            
            function offKey()
            {
            	this.onkeyup = null;
            }
            
            </script>
            Wie kann man das Ganze jetzt noch optimieren ?
            Gruß

            Michael

            Kommentar


            • #21
              Original geschrieben von fritzje610

              Wie kann man das Ganze jetzt noch optimieren ?
              Alles bis auf die Funktion FensterOeffnen löschen. Das sollte schon funktionieren.

              Kommentar


              • #22
                Ich werd bekloppt. Ich mal alles ausser der Funktion FensterOeffnen gelöscht und es funktioniert immer noch.
                Genau das gleiche stand gestern in der Funktion und es hat partout nicht funktionieren wollen. Das kann doch nicht sein.
                Das muss ich nochmal versuchen nachzustellen, wo da das Problem lag.

                Wie kann ich denn dem Fenster einen Namen geben. Momentan steht da nur http://localhost - Mozilla Firefox drin. Nicht so schick.
                Ich meine gestern was vom 2. Parameter gelesen zu haben. Den hab eich auch gesetzt, trotzdem wird nur die Adresse angezeigt.


                Gruß

                Michael
                Gruß

                Michael

                Kommentar


                • #23
                  Namen, der auf der Titelleiste zu sehen ist, machst du mit HTML und zwar den title-Tag, d.h. hier in der Datei lagerpruefung.php bei der HTML-Ausgabe.

                  Kommentar


                  • #24
                    Yep, funktioniert. Das er aber die Adresse nicht anzeigt sondern nur die Angaben aus dem Title-tag müsste doch auch gehen.
                    Wie kriegt man das denn hin?

                    Gruß

                    Michael
                    Gruß

                    Michael

                    Kommentar


                    • #25
                      Noch ne andere Frage dazu. Wie muss ich das denn machen, wenn ich nicht mehr klicken will, sondern wenn bei einem Dropdown eine Option geklickt wird, automatisch das neue Fenster geöffnet wird. Das müsste doch mit onchange gehen, oder?


                      Gruß

                      Michael
                      Gruß

                      Michael

                      Kommentar


                      • #26
                        1. Frage: http://de.selfhtml.org/javascript/ob...indow.htm#open
                        2. Frage: Ja.

                        Kommentar


                        • #27
                          Guten Morgen,

                          ein großer Teil der Anforderung funktioniert soweit. Zumindest öffnet sich das Fenster schonmal. Problem ist noch, das der Wert der gewählten Option nicht übergeben wird. Aber warum nicht ?

                          Das ist der Aufruf aus dem Formular:
                          Code:
                          <td>Glashersteller:</td>
                          <td><select name="glashersteller_li" onchange="FensterOeffnenAutomatisch(this.value)">
                          <option>-</option>
                          <option value="1">1</option>
                          <option value="2">2</option>
                          <option value="3">3</option>
                          </select></td>

                          Das die Funktion dazu:
                          Code:
                          function FensterOeffnenAutomatisch ()
                          {
                          	var glas = this.value;
                          	var Adresseglas = "/contents/glasliste.php";
                          	Adresseglas = Adresseglas+'?glas='+glas;
                          	GlasFenster = window.open(Adresseglas, "Glasliste", "left=200,top=100,scrollbars=yes");
                          	GlasFenster.focus();
                          }


                          Gruß

                          Michael
                          Zuletzt geändert von fritzje610; 18.11.2008, 09:38.
                          Gruß

                          Michael

                          Kommentar


                          • #28
                            Code:
                            function FensterOeffnenAutomatisch (Wert)
                            {
                            	var glas = Wert;
                            	var Adresseglas = "/contents/glasliste.php";
                            	Adresseglas = Adresseglas+'?glas='+glas;
                            	GlasFenster = window.open(Adresseglas, "Glasliste", "left=200,top=100,scrollbars=yes");
                            	GlasFenster.focus();
                            	
                            }
                            Mit dieser Funktion klappt das.


                            Danke und Gruß

                            Michael
                            Gruß

                            Michael

                            Kommentar

                            Lädt...
                            X