Java Reference
In-Depth Information
return retur;
}
</script>
</head>
<body>
<h3>Daten von einer Seite übernehmen</h3>
<h4>Zerlegung Schritt für Schritt</h4>
<script type="text/javascript">
wertepaar = werte();
for ( i = 0; i < wertepaar.length; i++) {
if (i % 2 == 0) document.write("Variablenname: ");
else document.write(" - Wert: ");
document.write(wertepaar[i]);
if (i % 2 != 0) document.write("<br />");
}
</script>
</body>
</html>
Die zentrale Funktionalität, um die Werte der Variablen wieder aus dem URL auszulesen,
steckt in der Funktion werte() . Die Ausgaben in der Funktion werden für die praktische
Anwendung nicht von Interesse sein. Sie sollen nur die schrittweise Extrahierung verdeut-
lichen. Im Grunde ist nur der Rückgabewert der Funktion interessant. Dazu wird die Varia-
ble retur als Array eingeführt ( retur = new Array(); ). Darin wird der Rückgabewert der
Funktion gespeichert. Zunächst zeigen wir an, was beim Aufruf der Seite in location.
search steht. Danach wird das führende Fragezeichen beseitigt und das Ergebnis in der
Variablen zerlegt1 zwischengespeichert ( zerlegt1 =location.search.substring(1); ).
Die folgende Zeile zeigt das Resultat.
Das verbleibende Resultat wird am kaufmännischen Und in ein Array mit Namen zerlegt2
aufgespalten ( zerlegt2 = zerlegt1.split("&"); ). In der folgenden Schleife werden die
Datenfeldelemente von zerlegt2 ausgegeben und dann bei jedem Durchlauf noch einmal
zerlegt (am Gleichheitszeichen - zerlegt3 = zerlegt2[i].split("="); ). Die verbleiben-
den Datenfeldelemente enthalten immer abwechselnd den Variablennamen und dann den
zugehörigen Wert.
In dem Beispiel wenden wir auch die Funktion decodeURIComponent() an, um den Wert einer
Variablen wieder zu dekodieren. Die wichtigsten Stellen sind retur[2*i] = zerlegt3[0];
und retur[2*i + 1] = decodeURIComponent(zerlegt3[1]); , womit das Array aufgebaut
wird, das nach Abarbeiten der Schleife mit return retur; zurückgegeben wird.
In dem zweiten Skript-Container wird die Funktion werte() aufgerufen und der Rückga-
bewert der Variablen wertepaar zugewiesen ( wertepaar = werte(); ). Damit ist wertpaar
ein Array, das danach mit einer Schleife durchlaufen wird ( for(i = 0; i < wertepaar.
length; i++){ ). Darin werden zwar nur der jeweilige Variablenname und der zugehörige
Wert ausgegeben, aber Sie erkennen, wie Sie an die Variablenbezeichner und die jeweiligen
Werte durch Aufruf der Funktion werte() kommen.
PrAXISTIPP: Wenn Sie in den URL einen JSON-String schreiben, können Sie
sich die Sache vereinfachen. Allerdings sind wir noch nicht ganz so weit, um
diese Technologie zu nutzen.
 
Search WWH ::




Custom Search