• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[GELÖST] Funktion loopen, Anfängerfrage

twinc

New member
Hallo,

ich komme nicht klar, wie ich die Funktion addC mit rows[100] bis rows[400] in einem Loop 300 mal wiederholen lasen kann, wenn ich den Button drücke. Ich bin schon drauf und dran die Funktion 300 mal in abgewandelter Form aufzurufen. :confused:

Code:
<input type="button" onclick="addC1(),addC2()">

<script type="text/javascript">
function addC1(){
    var x=document.getElementById('myTable').rows[100]
    var y=x.insertCell(-1)
    y.innerHTML="+"
}
function addC2(){
    var x=document.getElementById('myTable').rows[101]
    var y=x.insertCell(-1)
    y.innerHTML="+"
}
//usw. usw.
</script>


So ähnlich müsste das doch aussehen!?

Code:
<script type="text/javascript">
var i;
var cell;
function myFunction() {
    
    for (i = 100; i < 400; i++) {
        cell += i;
    }
}
function addC(){
    var x=document.getElementById('myTable').rows[cell]
    var y=x.insertCell(-1)
    y.innerHTML="+"
}

Danke.
 
Zuletzt bearbeitet von einem Moderator:
Servus,

du kommst dem Ziel näher, wenn du
- addC() innerhalb der Schleife in myFunction() aufrufst.
- myFunction selbst aufrufst
- das schließende </script> tag ergänzt (sorry, konnte ich mir nicht verkneifen)

Kann gerade weder testen noch scharf denken, deshalb etwas vage - Matthias
 
Zuletzt bearbeitet:
Genau damit komme ich nicht zurecht und wurstele grad dran herum. Mit den w3schools Erklärungen komme ich nur noch mehr durcheinander: JavaScript Functions
 
Zuletzt bearbeitet von einem Moderator:
HTML:
<script>

/* So sieht eine Funktionsdefinition aus: */

function func1(){
    // Anweisungsblock
    }

/* So ruft man die Funktion auf: */

func1()

/* So ruft man die Funktion 10 x in einer Schleife auf: */

var i;
for(i=0, i<10, i++) {
    func1()
    }

</script>

Vielleicht magst du ja ein paar Stunden oder Tage in Grundlagentraining investieren.
 
Danke!
Hab das jetzt so gelöst, zwar ziemlich sehr unelegant, aber so versteh ich es einigermaßen. :rolleyes:
Code:
function myFunction() {
    var text = "";
    var i;
    for (i = 100; i < 400; i++) {
        text += "function addC" + i + "() { <br> var x=document.getElementById(\'myTable\').rows[" + i + "] <br> var y=x.insertCell(-1) <br> y.innerHTML=" + i + " <br> }  <br><br>";
    }
    document.getElementById("demo").innerHTML = text;
}


function myFunction() {
    var text = "";
    var i;
    for (i = 100; i < 400; i++) {
        text += "addC" + i + "(), ";
    }
    document.getElementById("demo").innerHTML = text;
}

Hab das dann ins HTML Doc eingebaut und mit 2x Button drücken war meine Text-Tabelle endlich vollständig. :rolleyes:

@ matiro65, das war nur eine Notlösung mit Javascript, ich bin hier eigentlich an einer Textarbeit beschäftigt. Danke.
 
OMG... du hast dir eine JS-Funktion geschrieben, die dir JS erzeugt, der unnötig wäre, wenn du Funktionsparameter verwenden würdest?

Code:
function myFunction() {
	for (var i = 100; i < 400; i += 1){
		addC(i);
	}
}
function addC(rowIdx){
	var x=document.getElementById('myTable').rows[rowIdx];
	var y=x.insertCell(-1);
	y.innerHTML="+";
}
 
Zurück
Oben