kostenloser Webspace werbefrei: lima-city


3D Array auslesen und mit HTML anzeigen

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    c143

    c143 hat kostenlosen Webspace.

    Hallo, ich will mehrere Daten, die später hinzugefügt, geändert und gelöscht werden können in einen Array speichern, und hab auch schon ein Beispiel vorbereitet:

    <html>
    	<head>
    		<script>
    			var arr = new Array();
    			
    			arr[0] = new Array();
    				arr[0][0] = 'Namen';  //Der Inhalt bei 0 ist immer der Titel
    				arr[0][1] = 'Hans'; //Inhalt 1
    				arr[0][2] = 'Peter'; //Inhalt 2
    			
    
    			arr[1] = new Array();
    				arr[1][0] = ''Essen" //Titel
    				arr[1][1] = new Array();
    					arr[1][0][0] = 'Gesundes'; //Untertitel 1
    					arr[1][0][1] = 'Früchte';
    					arr[1][0][2] = 'Gemüse';
    				
    				arr[1][1] = new Array();
    					arr[1][1][0] = 'Ungesundes'; //Untertitel 2
    					arr[1][1][1] = 'Eis';
    					arr[1][1][2] = 'Schokolade';
    
    			arr[2] = new Array();
    				arr[2][0] = 'Berufe'; //Titel
    				arr[2][1] = 'Konstrukteur';
    				arr[2][2] = 'Informatik';
    
    		</script>
    	</head>
    	<body>
    	</body>
    </html>


    Also ich habe 2 dimensionale Arrays mit Titel und Inahalt, aber auch 3 dimensionale mit untertiteln. Diese würde ich gerne durchloopen, hab das auch schon mit einer for schleife versucht, aber da es ja entweder 2D oder 3D ist, bin ich daran gescheitert. Das ganze sollte dann im body folgendermassen ausgegeben werden:

    <p>
    	<div class="title">Titel</div>
    	<div class="content1"></div>
    	<div class="content2"></div>
    </p>
    <p>
    	<div class="title">Titel</div>
    	<div class="untertitel">Untertitel1</div>
    	<div class="unter_content"></div>
    	<div class="untertitel">Untertitel2</div>
    	<div class="unter_content"></div>
    </p>


    Oder habt ihr sogar bessere vorschläge als mit diesen Arrays? Ich möchte nur Javascript benutzen.
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Am Besten geht man solche Sachen immer mit der guten alten Schreibfeder und einem Blatt Papier an und schreibt (kleine) Arrays so auf, wie man sie eben dimensioniert. Dann Überlegt man sich wie man die Erste Dimension (=1. for-Schleife) angeht.
    In diese Schachtelt man die zweite Dimension (=2. for-Schleife), danach die dritte usw.
    Man testet das einfach mit der Hand am Papier durch. Geht 100x schneller als irgendetwas herumzuprobiern, besonders bei so dreidimensionalen Geschichten.
    Für deinen Fall müsste das dann so aussehen:
    for(var i = 0; i < arr.length; i++) {
       for(var j = 0; j < 3; j++) {
          for(var k = 0; k < 3; k++) {
             alert(arr[i][j][k]); // ansprechen eines Elements.
          }
       }
    }
    Gibt bestimmt dynamischere Wege, bin aber bisher über so statische Wege nicht drüber hinaus gekommen ^^

    Grüße! :wave:
  4. Autor dieses Themas

    c143

    c143 hat kostenlosen Webspace.

    limabone schrieb:
    Am Besten geht man solche Sachen immer mit der guten alten Schreibfeder und einem Blatt Papier an und schreibt (kleine) Arrays so auf, wie man sie eben dimensioniert. Dann Überlegt man sich wie man die Erste Dimension (=1. for-Schleife) angeht.
    In diese Schachtelt man die zweite Dimension (=2. for-Schleife), danach die dritte usw.
    Man testet das einfach mit der Hand am Papier durch. Geht 100x schneller als irgendetwas herumzuprobiern, besonders bei so dreidimensionalen Geschichten.
    Für deinen Fall müsste das dann so aussehen:
    for(var i = 0; i < arr.length; i++) {
       for(var j = 0; j < 3; j++) {
          for(var k = 0; k < 3; k++) {
             alert(arr[i][j][k]); // ansprechen eines Elements.
          }
       }
    }
    Gibt bestimmt dynamischere Wege, bin aber bisher über so statische Wege nicht drüber hinaus gekommen ^^

    Grüße! :wave:


    Soweit war ich schon lange, und hab das auch mit einem Papier kurz skiziert, ist ja auch logisch, aber wenn es nur ein zweidimensionaler Array ist, geht man ja einen schritt zu weit. Ich hab das dann probiert mit einer If abfrage zu regeln, also wenn es ein array ist, dann nochmal ne zusätzliche schleife, aber ich bekomme dann die 2D arrays 3 mal und sont nichts.
  5. Warum müssen es denn unbedingt Arrays sein?

    Die Baumstruktur kannst du auch per XML abbilden, welches du dann einfach per XSLT in dein gewünschtes HTML template umwandeln können solltest.

    Beitrag zuletzt geändert: 11.6.2013 17:55:05 von milchreis
  6. Autor dieses Themas

    c143

    c143 hat kostenlosen Webspace.

    milchreis schrieb:
    Warum müssen es denn unbedingt Arrays sein?


    c143 schrieb:
    Oder habt ihr sogar bessere vorschläge als mit diesen Arrays? Ich möchte nur Javascript benutzen.


    Steht doch in meinem ersten Post. ;) Schau ich mir nacher an, danke.

    EDIT: Wie auch im ersten Post steht, würd ich gerne die Daten nacher editieren, das heisst hinzufügen, abändern, löschen. Dann ist doch xml nicht geeignet.

    Beitrag zuletzt geändert: 11.6.2013 20:06:17 von c143
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!