Array

Daveman007

Mitglied
Hallo ich versuche gerade eine tabelle mit einem Image array zu machen.
Es geht aber nicht. Die array variable wird von der Tabelle nicht erkannt. hat jemand ne idee?
Das soll stück für stück dan eine Bildergalerie werden. Wollte mir nicht fertigen code runterladen, komme aber nicht weiter.

<title>Slide</title>

<!--Funktion Zähler x=x+1-->
<script language="Javascript">

function next() {
x = x+1;

}

</script>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>


<body>
<!-- Arraybildung-->
<script language="Javascript">
var pictures = new Array();
var x = 0;
pictures[0] = "strand.gif";
pictures[1] = "Freunde.jpg";
pictures[2] = "Wow.jpg";



</script>

<table width="500" border="0" cellpadding="0" cellspacing="0">
<tr>

<td > <img src="'+picture[0]+'"></td>

</tr>


</table>

<!-- Button-->
<form> <input value="Next" onclick="javascript: next()" type="button">
</form>


</body>
</html
 
HTML:
<td ><img src="'+picture[0]+'"></td>
Das ist Murks, so sucht er nach dem Bild mit namen '+picture[0]+'. Du kannst keine JavaScript-Varaiable in gewöhnliches HTML integrieren.

Wenn, dann mach es so:
HTML:
document.write('<td ><img src="'+picture[0]+'"></td>');
 
Etwa so. kapier nicht ganz. So klappt es nicht.

Kannst du mir das etwas erklären?

<title>Slide</title>

<!--Funktion Zähler x=x+1-->
<script language="Javascript">

function next() {
x = x+1;
//document.write("<img src = '"+pictures[x]+"'>");
}

</script>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>


<body>
<!-- Arraybildung-->
<script language="Javascript">
var pictures = new Array();
var x = 0;
pictures[0] = "strand.gif";
pictures[1] = "Freunde.jpg";
pictures[2] = "Wow.jpg";


function open() {

document.write('<td ><img src="'+picture[x]+'"></td>');

}
</script>

<table width="500" border="0" cellpadding="0" cellspacing="0">
<tr>

<td ></td>

</tr>


</table>

<!-- Button-->
<form> <input value="Next" onclick="javascript: next()" type="button">
</form>


</body>
</html>
 
Zuletzt bearbeitet:
Äh, nein eher nicht so, da hast du recht, aber bevor ich weiter mache:

Ich glaube dir fehlen einfach die JavaScript-Grundlagen und du wärest erstmal besser damit bedient JavaScript richtig, von Grund auf zu lernen, sei mir nicht böse.

Fall du php kannst: Die document.write()-Funktion in JavaScript funktioniert in etwas so wie die echo()-Funktion in php. Sie muss also dort im Dokument notiert werden, wo dann der Inhalt ausgegeben werden soll - natürlich innerhalb eines <script>-Tags als Paralelle zum <?php-Tag.
 
Zuletzt bearbeitet:
Versuche es gerade anhand eines Buches von Grund auf zu lernen.

Doch möchte auch dieses script fertig bekommen da ich es für meine I-seite brauch.

Wenn ich weiß wie man in einer HTML-tabelle ein JavaScript Array einfügt wäre das ein großer schritt nach vorn. Hab anhand dieses Scriptes schon einiges über JS gelernt.

Vielleicht kannst du mir ja einen Tip geben.
 
Es gibt zwei Möglichkeiten html per JavaScript in ein Dokument zu schreiben:

1.) document.write('htmlCode');
Diese Methode funktioniert aber nur beim Laden. In deinem Beispiel von oben sähe das so aus:
HTML:
<script language="Javascript">
     	var pictures = new Array();
     	var x = 0;
     	pictures[0] = "strand.gif";
     	pictures[1] = "Freunde.jpg";
     	pictures[2] = "Wow.jpg";
     </script>
     
     <table width="500" border="0" cellpadding="0" cellspacing="0">
     	<tr>
   			
    <script type="text/javascript">
         document.write('<td ><img src="'+ picture[0] +'"></td>');
    </script>
     	
     	</tr>
     </table>

2.) Objekt.innerHTML
Funktioniert nur, wenn du ein Objekt hast. Das bekommst du z.B. über document.getElementById('IdEinesHtmlElements'). In deinem Scritp sähe das so aus:
HTML:
<script language="Javascript">
    	var pictures = new Array();
   pictures[0] = "strand.gif";
    	pictures[1] = "Freunde.jpg";
    	pictures[2] = "Wow.jpg";
    </script>
    
    <table width="500" border="0" cellpadding="0" cellspacing="0">
    	<tr>
    			
   <td><div id="bild"></div></td>
    	
    	</tr>
    </table>
    
 <form> <input value="Next" onclick="document.getElementById('bild').innerHTML = '<img src=\"'+ picture[0] +'\">' " type="button">
    	</form>

Aber das kannst du erstens in jedem Tutorial lesen und zweitens wirst ohne dieses Wissen mit deinem Script kein Stück weit kommen, weil du an allen Ecken und Enden semantische Fehler erzeugst. Ich sag ja, du solltest erstmal die Sprache lernen und dann Scripts verfasse - das ist die normal Reiehnfolge und die hat sich bewährt.

Es tut mir leid, dass ich dir das so sage, aber warum zu 100ten Mal das Gleiche erklären, wenn es ein anderen schon viel besser und ausführlicher geschrieben hat. Du kannst dann gerne mit anspruchsvolleren Fragen wiederkommen, aber das hier fällt eindeutig unter folgenden Beitrag: http://www.tutorials.de/tutorials215197.html
Bitte lies in dem Thema auch den letzten Beitrag, das wäre nämlich auch ein Anliegen von allen hier.
 
Zuletzt bearbeitet:
Zurück