onload="init_*** mehrmals angeben

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

  • onload="init_*** mehrmals angeben

    Hi,
    Ich habe das hier:
    Code:
    <body onload="init_tabsort('t1')">
    in meine HTML Seite eingebaut für ein Script, das meine Tabellen sortierbar macht. Ich habe nun aber 2 weitere Tabellen hinzugefügt. Nun brauch ich diese 3:
    Code:
    onload="init_tabsort('t1')"
    onload="init_tabsort('t2')"
    onload="init_tabsort('t3')"
    Wie kann ich diese 3 kombinieren, sodass alle 3 initialisiert werden?
    Habe es so versucht:
    Code:
    <body onload="init_tabsort('t1'); init_tabsort('t2'); init_tabsort('t3')">
    Aber das klappt nicht ganz.

  • #2
    klappt nicht ganz
    tolle Fehlerbeschreibung...

    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
    Wie man Fragen richtig stellt

    Kommentar


    • #3
      OK hier ist das Script + HTML Datei.

      Ich kann Tabelle 1 sortieren, aber wenn ich Tabelle 2 oder 3 sortieren will, wird die erste Tabelle sortiert, obwohl die 2 und 3 eigene ID's hat.

      Woran liegt das?

      Kommentar


      • #4
        Du erwartest jetzt nicht ernsthaft von mir, dass ich die Zip-Datei runterlade und das ganze irgendwie daheim ans Laufen bringe? Oo

        Stell das online als (theoretisch) funktionierende Version und verlink das hier - nur so kann man auch davon ausgehen, dass wir alle den selben Code sehen (und vor allem wird mein Desktop dann nicht mit Dateien zugemüllt ~.~)

        Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

        bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
        Wie man Fragen richtig stellt

        Kommentar


        • #5
          Gut bitte sehr.
          Zuletzt geändert von x16; 31.08.2007, 21:53.

          Kommentar


          • #6
            Funktioniert nicht weil man in onLoad halt nur eine Funtion angeben kann. Also erstellst du jetzt entweder eine Funktion und schreibst da alle inits rein oder suchst mal nach etwas dynamischem.
            Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

            Kommentar


            • #7
              OK, mal sehen! Äh so in der Art?

              <!--
              function init(){
              "init_tabsort('t1')";
              "init_tabsort('t2')";
              "init_tabsort('t3')"
              }
              onload = init;
              //-->


              Ich weiß, das kann nicht richtig sein, ich hab selbst nicht verstanden was ich da geschrieben habe. Aber ein versuch ist es denke ich Wert.

              Kommentar


              • #8
                Original geschrieben von tontechniker
                Funktioniert nicht weil man in onLoad halt nur eine Funtion angeben kann.
                Und wo liegt der Ursprung dieser weisen, aber vollkommen falschen, Aussage?

                Code:
                <html>
                <body onload="alert('test'); alert('test2');"></body>
                </html>
                Funktioniert wie erwartet.

                Vielmehr scheinen die Sortier-Funktionen kaputt zu sein - man klicken zwei Mal auf den Button "grün" der zweiten Tabelle: Wieso sortiert er da bei der ersten rum?

                Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                Wie man Fragen richtig stellt

                Kommentar


                • #9
                  Und wo liegt der Ursprung dieser weisen, aber vollkommen falschen, Aussage?
                  Da der Rest erstmal ganz gut aussah ging ich erstmal davon aus, dass es da ein Problem gibt. *sry*
                  Wieso sortiert er da bei der ersten rum?
                  Das Problem ist, dass das Skript nicht für mehrere Tabellen geeignet ist, weil die Ids die den einzelnen Spalten zugewiesen werden nicht eindeutig für die Tabelle sind.
                  Code:
                  tables[t].tbody_obj.childNodes[i].id = 'tr_' + tri;
                  Dieser Code wird für alle Tabellen gleich durchlaufen, dass heißt es kann so nicht funktionieren.
                  Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

                  Kommentar


                  • #10
                    Das heißt ich muss mir doch ein anders Script suchen. Ok danke euch. Dann gehe ich mal suchen!

                    Kommentar

                    Lädt...
                    X