tbe: kleines Script

Beitrag lesen

Lieber Linuchs,

herzlichen Dank! Du hast offenbar genau verstanden, was ich brauche. Das hilft mir schon sehr und hat meinen Bedarf fürs Erste gelöst. Ich kann die Strings holen und einbinden. Im Moment ist die Anzahl der Dateien bekannt und begrenzt auf 5. So kann ich die nötigen Strings sicher aus den Dateien holen und in ein einfaches Menü samt Link einfügen. Funktioniert Super und erfüllt seinen Zweck!!

Später wird es aber noch auszubauen sein. Es bleibt zwar weiterhin klar, wie die Dateien heißen: subst_xxx.htm Allerdings ist dann Anzahl der Dateien unbekannt: Mindestens 7, maximal 20 (bis subst_020). Der Übersicht halber wäre es natürlich schön, das ginge mit einer Schleife.

Nun habe ich versucht, deinen Code mit einer Schleife anzustoßen. Das gelingt mir noch nicht 😟. Offensichtlich liegt es mindestens an der Übergabe meines Zählers in die Funktion.

So sieht mein derzeitiger Stand aus:

<script>
var my_request = new XMLHttpRequest(); // Mozilla, Safari, Opera

for (a=1; a<21; a++) {
  // die Zahl mit führender Null einfügen
	if (a < 10) { 
    var url = "subst_00"+a+".htm";
  } 
  else {
    var url = "subst_0"+a+".htm";
  }
  my_request.open('post', url, true);         // Request öffnen
	my_request.send(null);                      // Request senden
	my_request.onreadystatechange = auswertung(a); // Funktion, Request auswerten
}
	
function auswertung(a) {
	if ( my_request.readyState == 4 && my_request.status == 200 ) {
	empfangene_html = my_request.responseText;
    var start = empfangene_html.indexOf( '<div class="mon_title">' ) +23; // Start String
    var ende  = empfangene_html.indexOf( '<table class="mon_list" >' ) -8; // Ende String
    var my_string = empfangene_html.substring(start, ende);
	  var inhalt = '<a href="' + url + '" target="iframe">' + my_string + '</a>'
	  document.getElementById('zielid'+a).innerHTML = inhalt;
  }	
  }
</script>
<ul>
	<li id="zielid1">Heute</li>
	<li id="zielid2">Morgen</li>
	<li id="zielid3">in 3 Tagen</li>
	<li id="zielid4">in 4 Tagen</li>
	<li id="zielid5">in 5 Tagen</li>
	<li id="zielid6">in 6 Tagen</li>
	<li id="zielid7">in 7 Tagen</li>
  ...
</ul>

Dankbare Grüße

tbe