Die frage hatte ich schon im anderen Forum gestellt aber leider keine befriedigende
Antwort erhalten
Mein Problem ist, dass die 3 presentierten Scripte genau das selbe ausführen müssen.
Bloß "Script 2" Klappt nicht !!! ( Siehe Kommentar im Quellcode und Screenshot )
( siehet unerwünscht aus und es gibt performance probleme bei größeren zahlen )
Mich Interessiert vorallem der Grund warum es nicht klappt !!! Warum es ausgerechnet
auf die weise nicht klappt !!! Erscheint mir als völlig unlogisch !!!
Brauche nähmlich den Programmierstil eventuell für ähnliche scripte. Desshalb wollte ich
es mal nicht umgehen und verstehen, warum es so nicht geht wie erwünscht, wobei
mir das auch als völlig unlogisch erscheint, wenn ich "Script 2" mit "Script 1" und "Script 3" vergleiche.
Ich bitte also um Verständniss und um Hilfe.
Ich danke schonmal im voraus !
Und ja ! Es siehet sowohl auf den smartphone als auf dem pc gleich aus !!!
Es ist also kein Browser fehler !
[Blockierte Grafik: http://www7.pic-upload.de/13.11.13/qsawvzc4dedk.png]
<html><head></head><body>
Mit innerHTML ohne For-Schleife
<table border= "3" id= "tab1" ></table>
<hr>
Mit innerHTML mit For-Schleife
<table border= "3" id= "tab2" ></table>
<hr>
Ohne innerHTML aber mit For-Schleife
<!--- Tabelle entsteht hier durch document.write(); ist ja --->
<!--- Schließlich ohne innerHTML --->
<!--- ------------------Klappt reibungslos---------------------- --->
<!--- Script 1 - ANFANG --->
<script>
document.getElementById("tab1").innerHTML +=
"<tr>"+"<td> 1 </td>" + "<td> 2 </td>" + "<td> 3 </td>"+"</tr>"+
"<tr>"+"<td> 4 </td>" + "<td> 5 </td>" + "<td> 6 </td>"+"</tr>"+
"<tr>"+"<td> 7 </td>" + "<td> 8 </td>" + "<td> 9 </td>"+"</tr> "
;
</script>
<!--- Script 1 - ENDE --->
<!--- ------------------Klappt nicht wie es soll !!!!! ---------------------- --->
<!--- ------------------Bei größeren zahlen gibt es sogar noch Performance --->
<!--- ------------------Probleme !!!! ------------------------------------------- --->
<!--- ------------------Zeigt wie man im Screenshot siehet, es auch falsch --->
<!--- ------------------an !!!! -------------------------------------------------- --->
<!--- ---------------------------------------------------------------------------- --->
<!--- --->
<!--- Mir ist die Lösung an erster stelle völlig unwichtig !!!!!!!!!!
Erstmal suche ich den grund !!!!!!!
Das ist für mich relevant, weil ich auf dieser Grundlage ein paar
script vorlagen erstellen möchte. Auch vergleichbar mit so was in
der Art Framework. --->
<!--- --->
<!--- Relevant ist es halt, dass ich verstehe, was ich mache.
Kann ja zwar nicht alles hinterfragen, aber genau dieser Fall
erscheint mir als völlig unlogisch warum das nicht klappt. --->
<!--- Script 2 - ANFANG --->
<script>
var Zaeler = 1 ;
for ( y = 1 ; y <= 3 ; y++ ) {
document.getElementById("tab2").innerHTML +=
"<tr>";
for ( x = 1 ; x <= 3 ; x++ ) {
document.getElementById("tab2").innerHTML +=
"<td>" + Zaeler + "</td>";
Zaeler ++ ;
}
document.getElementById("tab2").innerHTML +=
"</tr>";
}
</script>
<!--- Script 2 - ENDE --->
<!--- ------------------Klappt reibungslos---------------------- --->
<!--- Script 3 - ANFANG --->
<script>
var Zaeler2 = 1 ;
document.write ( "<table border ='3' >" );
for ( y = 1 ; y <= 3 ; y++ ) {
document.write("<tr>");
for ( x = 1 ; x <= 3 ; x++ ) {
document.write( "<td>" + Zaeler2 + "</td>" );
Zaeler2 ++ ;
}
document.write("</tr>");
}
document.write( "</table>" );
</script>
<!--- Script 3 - ENDE --->
</body></html>
Alles anzeigen
EDIT: Diesen Beitrag habe ich soeben jetzt, c.a 3 Tage nach der Erstellung des Beitrages, bearbeitet, weil im "Script 2" ein Semikolion zu viel war.
Dennoch sind "keine" Veränderungen sichtbar. Scheint wohl eine Code Unreinheit gewesen zu sein die JavaScript toleriert. Also ignoriert die
kleine Korrektur, denn sie hat keinerlei auswirkungen auf die Funktionsweise meines Codes, also weder negative gehabt noch positive bekommen.