2 PullDown in einem Fenster

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

  • 2 PullDown in einem Fenster

    Hallo !!

    Ich bin in Sachen Java Scripte eine Niete, darum bitte ich euch um Hilfe !!

    Ich möchte gerne 2 Pulldown Menü in einer Seite einbinden, wo die aufgerufene Seite ohne Bestätigung geladen werden soll.
    Wenn ich die Menüs einzeln in die Seite einbaue funktioniert es, jedoch wenn ich ein 2. hinzufüge, bekomm ich eine Fehlermeldung in der Taskleiste !!

    Code:
    <td width="*"><center><font size="2">
    <script LANGUAGE="JavaScript">
    function MakeArray() {
    var lngth = MakeArray.arguments.length;
    for ( i = 0 ; i < lngth ; i++ ) { this[i]=MakeArray.arguments[i] }
    }
    function switch_page() {
    var select = eval(document.menuform.language.selectedIndex);
    if( (select > 0) && (select < 13) ) {
    var intl=new MakeArray( '', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://'); 
    location=intl[document.menuform.language.selectedIndex];
    }
    }
    </script>
    
    <form NAME="menuform1">
    <font SIZE="-1"><div align="center"><center><p></font> </p>
    </center></div><div align="center"><center><p><font SIZE="-1"><select NAME="language"
    onChange="switch_page();" ALIGN="left" size="1">
    <option SELECTED>Wähle eine URL aus der Liste</option>
    <option>Text zu URL 1 </option>
    <option>Text zu URL 2 </option>
    <option>Text zu URL 3 </option>
    <option>Text zu URL 4 </option>
    <option>Text zu URL 5 </option>
    <option>Text zu URL 6 </option>
    <option>Text zu URL 7 </option>
    <option>Text zu URL 8 </option>
    <option>Text zu URL 9 </option>
    <option>Text zu URL 10 </option>
    </select> </font></p>
    </center></div>
    </form>
    </td>
    
    <td width="*"><center><font size="2">
    <script LANGUAGE="JavaScript">
    function MakeArray() {
    var lngth = MakeArray.arguments.length;
    for ( i = 0 ; i < lngth ; i++ ) { this[i]=MakeArray.arguments[i] }
    }
    function switch_page() {
    var select = eval(document.menuform.language.selectedIndex);
    if( (select > 0) && (select < 13) ) {
    var intl=new MakeArray( '', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://'); 
    location=intl[document.menuform.language.selectedIndex];
    }
    }
    </script>
    
    <form NAME="menuform2">
    <font SIZE="-1"><div align="center"><center><p></font> </p>
    </center></div><div align="center"><center><p><font SIZE="-1"><select NAME="language"
    onChange="switch_page();" ALIGN="left" size="1">
    <option SELECTED>Wähle eine URL aus der Liste</option>
    <option>Text zu URL 1 </option>
    <option>Text zu URL 2 </option>
    <option>Text zu URL 3 </option>
    <option>Text zu URL 4 </option>
    <option>Text zu URL 5 </option>
    <option>Text zu URL 6 </option>
    <option>Text zu URL 7 </option>
    <option>Text zu URL 8 </option>
    <option>Text zu URL 9 </option>
    <option>Text zu URL 10 </option>
    </select> </font></p>
    </center></div>
    </form>
    
    </td>
    Die Fehlermeldung: 'document.menuform.language' ist Null oder kein Objekt

    Könnt ihr mir hier weiterhelfen ?

    Danke !!

    Grüße
    Chris

    P.S.: Ich habe diesen Code in einem Scripte Archiv gefunden und noch nicht abgeändert !!

  • #2
    Re: 2 PullDown in einem Fenster

    du hast die beiden forms menuform1 und menuform2 benannt, versuchst aber oben in der javascript-funktion switchpage() auf document.menuform.language.selectedIndex zuzugreifen, welches aber nicht existiert.

    ausserdem hast du den script-teil einfach gedoppelt, so das du jetzt die funktionen makearray und switchpage zweimal hast.
    entweder schmeisst du die zu einer funktion zusammen, die dann noch einen zusätzlichen parameter übergeben bekommt, aus welchem form der aufruf kam, oder du benennst die zwei funktionen analog zu den forms mit 1 und 2 am ende.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      hi

      ich kann dir erstmal nur kurz einen tipp geben:

      also bei forlgender fehlermeldung:

      'document.menuform.language' ist Null oder kein Objekt

      ist menuform der name der form. der ist aber in deinem script menuform1 und menuform2 das kann nicht funktionieren.

      du musst also wenn du von menuform1 kommst folgende funktion benutzen:

      function switch_page() {
      var select = eval(document.menuform1.language.selectedIndex);
      if( (select > 0) && (select < 13) ) {
      var intl=new MakeArray( '', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://', 'http://');
      location=intl[document.menuform1.language.selectedIndex];
      }

      hilft das??

      gruss von pau

      Kommentar


      • #4
        Es funktioniert

        Guten Morgen !!

        Vielen Dank an euch beiden, es funktioniert !!!

        Grüße
        Chris

        Kommentar


        • #5
          Neue Fragen

          Hallo !!

          Nachdem ich jetzt die Navigation hingebracht habe, hänge ich nun leider
          beim Design fest !! Ich wäre euch sehr dankbar wenn ihr
          hier mal einen Blick drauf werfen könntet.

          Erstmal würde ich gerne die leere Zeile unter den Dropdown Menüs
          wegbekommen. Ich habe jetzt glaube ich schon fast alles ausprobiert und
          geändert aber ich komme nicht drauf.
          Hier der
          Code:
              <td width="*"><center><font size="2">
                <script LANGUAGE="JavaScript">
          function MakeArray() {
          var lngth = MakeArray.arguments.length;
          for ( i = 0 ; i < lngth ; i++ ) { this[i]=MakeArray.arguments[i] }
          }
          function switch_page2() {
          var select = eval(document.menuform2.language.selectedIndex);
          if( (select > 0) && (select < 3) ) {
          var intl=new MakeArray( '', 'http://chris-kegelseiten.priv.at/berichte/indexnoehgast.php');
          location=intl[document.menuform2.language.selectedIndex];
          }
          }
          </script>
          <form NAME="menuform2">
          <font SIZE="-1"><div align="center"><center></font>
          </center></div><div align="center"><center><select NAME="language"
          onChange="switch_page2()" style="width:100%; background-color:#9FA8CF; font-size:8pt; font-family:Verdana,
          Arial, Helvetica, sans-serif;" width="250">
          <option SELECTED>Gastmannschaft</option>
          <option>Sortieren</option></select></font></center></div></form>
          </td>
          Als nächstes versuchte ich die Überschrift zentriert anzeigen zu
          lassen, jedoch auch hier versagen meine Java Kentnisse.

          Ich wäre nochmal sehr dankbar wenn ihr mir aus der Patsche helfen
          könntet !!

          Danke

          Grüße
          Chris
          Zuletzt geändert von Chrisi; 13.12.2002, 14:06.

          Kommentar


          • #6
            versuchs mal mit div valign="middle" und das

            <font SIZE="-1"><div align="center"><center></font>
            </center></div><div align="center"><center>

            ist ein bißchen übertrieben zumal das Ganze so aussehen sollte

            <font SIZE="-1">
            <div align="center">
            <center>
            </center>
            </div>
            </font>
            <div align="center">
            <center>

            aber wofür doppeltes Center wenn eh nix drinsteht?

            und schau auch mal bei http://www.teamone.de/selhtml rein

            welche Überschrift wolltest du denn zentrieren und fettschreiben?

            Kommentar


            • #7
              Hi !!

              Danke für deine Antwort !!

              Die vielen unnötigen center, habe ich nun rausgelöscht. War ein vorbereitetes Dropdown !!

              <div valign="middle"> funktioniert leider auch nicht. Ich würde gerne die
              Überschrift im DropDown (Heimmannschaft u. Gastmannschaft) zentrieren.
              Falls das einzeln nicht möglich ist, die ganze Auswahl des Dropdown. So
              wie es jetzt aussieht, schaut es nix gleich !!
              Das Fettschreiben habe ich bereits hinbekommen !!

              Grüße
              Chris

              P.S.: Was mich aber mehr stört ist die leere Zeile unter dem Dropdown !!
              Hast du vielleicht eine Ahnung warum diese verursacht wird? Wenn ich den
              Abschluss </form> weglasse, ist die leere Zeile auch weg. Aber dann
              funktioniert natürlich das Menü nimmer !!

              http://www.chris-kegelseiten.priv.at...oe/msh/ms1.php
              Zuletzt geändert von Chrisi; 13.12.2002, 14:31.

              Kommentar


              • #8
                P.S.: Was mich aber mehr stört ist die leere Zeile unter dem Dropdown !!
                Hast du vielleicht eine Ahnung warum diese verursacht wird? Wenn ich den
                Abschluss </form> weglasse, ist die leere Zeile auch weg. Aber dann
                funktioniert natürlich das Menü nimmer !!
                das liegt daran, das <form> ein blocklevel element ist, d.h. eines der elemente, die standardmässig immer einen neuen absatz erzeugen.

                probier mal es mit folgendem css-style zu formatieren, dann sollte die leere zeile eigentlich weg sein:

                <form style="display:inline;" ...>

                wenn das auch noch nicht ausreicht, könntest du auch noch versuchen, den abstand nach unten mit margin-bottom:0px; (ebenfalls css) ganz zu killen...
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  Hallo !!

                  Danke für deine Antwort !! Ich habe jedoch einfach mal </form> ganz zum
                  Schluss, d.h. nach dem </td> geschrieben und jetzt ist der Absatz auch
                  weg.

                  Meine Probleme habe ich nun fast alle gelöst, was noch übrig ist wäre:
                  die erste Zeile im Drop Down zentriet zu schreiben. Ich habe glaube ich schon fast alles ausprobiert:
                  <center>, <div align="center">, <div valign="center">, aber das funzt alles
                  nicht !!

                  Hast du hierzu noch einen Rat ?

                  Grüße
                  Chris

                  Kommentar


                  • #10
                    Ich habe jedoch einfach mal </form> ganz zum
                    Schluss, d.h. nach dem </td> geschrieben und jetzt ist der Absatz auch
                    weg.
                    sag tschüss zum korrekten html :-)

                    eine <td> innerhalb eines <form> ist nach den html regeln nicht erlaubt.
                    aber solange es funzt und du damit zufrieden bist...

                    Meine Probleme habe ich nun fast alle gelöst, was noch übrig ist wäre:
                    die erste Zeile im Drop Down zentriet zu schreiben. Ich habe glaube ich schon fast alles ausprobiert:
                    <center>, <div align="center">, <div valign="center">, aber das funzt alles
                    nicht !!
                    dazu ist mir auch keine möglichkeit bekannt.

                    du könntest aber doch versuchen, den text durch geschützte leerzeichen (&amp;nbsp so weit einzurücken, dass er in etwa zentriert aussieht...?
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar


                    • #11
                      Hallo !!

                      Ja das habe ich auch schon versucht, würde auch funktionieren. Es
                      entsteht allerdings ein neues Problem wenn die Auflösung kleiner wird. Ich
                      erstelle das ganze in 1024*768, wenn jedoch einer mit 800*600 surft, hab
                      ich die Leerzeichen im Fenster und die Schrift sehe ich nur halb !!

                      Nee, ich hab keine <td> innerhalb eines <form>, sondern ein <form>
                      innerhalb von <td>. Jedoch wenn ich so beende: </form></td>, kommt
                      eine leere Zeile. Bei </td></form> jedoch nicht !! Ich kenne mich da nicht
                      so gut aus, aber es funzt und das ist die Hauptsache.

                      Wenn ich nun aber den Text nicht zentrieren kann, kann ich meine
                      Vorstellungen, wie ich das Script aufbauen wollte, vergessen !!

                      Grüße
                      Chris

                      Kommentar


                      • #12
                        Nee, ich hab keine <td> innerhalb eines <form>, sondern ein <form>
                        innerhalb von <td>. Jedoch wenn ich so beende: </form></td>, kommt
                        eine leere Zeile. Bei </td></form> jedoch nicht !!
                        das ist ja noch grösserer mist :-)
                        es gibt entweder <x><y>...</y></x> oder <y><x>...</x></y>, aber eine schachtelung <x><y>...</x></y> (oder umgekehrt) ist absolut unzulässig!
                        da kannst du keinesfalls darauf vertrauen, dass die seite im browser richtig angezeigt wird, nicht mal das überhaupt was angezeigt wird.
                        der ie ist ziemlich fehlertolerant (zu sehr für den geschmack eines echtern webdesigners), aber bei anderen browsern kannst du dich da nicht drauf verlassen dass die so einen bescheidenen code einfach so schlucken...

                        Wenn ich nun aber den Text nicht zentrieren kann, kann ich meine Vorstellungen, wie ich das Script aufbauen wollte, vergessen!!
                        nur weil der text in einer selectbox nicht zentriert dargestellt werden kann, funktioniert dann anschliessend dein script nicht mehr...?
                        auweia.
                        I don't believe in rebirth. Actually, I never did in my whole lives.

                        Kommentar


                        • #13
                          Hi !!

                          nur weil der text in einer selectbox nicht zentriert dargestellt
                          werden kann, funktioniert dann anschliessend dein script nicht mehr...?
                          Na es schaut nix gleich. Ich habe eine Tabelle mit Überschirften, welche
                          zentriert sind und in dieser Zeile sind auch die Pulldown Menüs. Und
                          wenn nun diese beiden links am Rand stehen und der Rest ist zentriert,
                          schaut doch blöd aus !! Oder würdest es du so lassen ? Glaube nicht !!

                          Grüße
                          Chris

                          Kommentar

                          Lädt...
                          X