Hyperlink Wert zuweisen und speichern
hi..
ich bin gerade dabei eine website zu erstellen, und zwar mit hilfe von Frontpage 2003. Darauf befindet sich eine Seite, auf der mehrere Hyperlinks zu auswahl stehen. Von allen diesen Links soll der User zur selben page weitergeleitet werden, allerdings müssen die informationen, welchen link der user angeklckt hat irgendwie übernommen werden, um dann zB einen spezifischen text dazu anzuzeigen...
Gibt es da irgendeine Lösung in HTML/Javascript? oder vllt sogar in Frontpage selbst irgendeinen workflow?
MfG !mact
Antwort schreiben
Antwort 1 von kicia vom 10.08.2019, 06:37 Options
Ich glaube, eine Einfache Lösung wäre:
Der Link:
<a href="./nächsteseite.htm?link01">Link 01</a>
Innerhalb der nächsten Datei:
if(window.location.search.indexOf("?link01") > (-1)) { alert("link 01 ausgewählt"); }
Antwort 2 von _mpact vom 10.08.2019, 09:07 Options
Zitat:
if(window.location.search.indexOf("?link01") > (-1)) { alert("link 01 ausgewählt"); }
Welches ist echte syntax, und was davon sind platzhalter die ich entsprechend ersetzen muss ("?link01" is klar)?
1 zu 1 funktioniert der Code nich. Hab ihn ihn als funktion ne .js datei geschrieben, und mit <script...></script> eingebunden, im <Body> tag mit onload ausgeführt.... nichts....
Antwort 3 von kicia vom 10.08.2019, 09:20 Options
zum Testen:
Kopiere folgenden Code in eine Datei und starte sie.
Hänge dann von Hand in der Adressleiste "?abc_01" oder "?abc_02" hinten dran (ohne Anführungszeichen).
"window.location.search" speichert den Text ab dem Fragezeichen. Was da (nach dem Fragezeichen) steht, steht Dir vollkommen frei.
Ich möchte betonen, daß dieser Code so nicht sehr elegant ist, aber fürs erste reichts, dachte ich.
<html>
<head>
<script language="javascript">
function getLocationSearch()
{
if(window.location.search.indexOf("?abc_01") > (-1))
{
alert("01 ausgewählt");
}
else if(window.location.search.indexOf("?abc_02") > (-1))
{
alert("02 ausgewählt");
}
}
</script>
</head>
<body onLoad="getLocationSearch();">
bla bla bla
</body>
</html>
Antwort 4 von _mpact vom 10.08.2019, 09:41 Options
Kommt nur ne Fehlermeldung
"Windows can not find....."
Der Code muss nicht elegant sein, hauptsache er funktioniert irgendwie ;-)
Hab bisher noch nie was mit HTML/Javascript gemacht, nur C/C++, is also neuland für mich.
Antwort 5 von _mpact vom 10.08.2019, 09:46 Options
ok... etzt funktioniert der Code, hab einfach mal wie im ersten tipp beschrieben den Link von nem Buttun auf die Seite gelicnkt und das ?abc_01 hinzugefügt. Jetzt kam der alert
Antwort 6 von _mpact vom 10.08.2019, 09:58 Options
hab scheinbar n fehler beim einbinden der js datei gemacht.
DANKE!
Würd mich noch interessieren wofür in der if -abfrage der vergleich >(-1) is? woher kommt das?
Vllt kannst du mir noch weiterhelfen:
Im moment kommt da ja dieses nette alert-fenster. Hätte aber natürlich gerne, das der Text auf der page steht. Das script müsste also irgendwie n html-code irgendwohin packen...
Antwort 7 von kicia vom 10.08.2019, 10:17 Options
indexOfMeinText.indexOf("ABC") gibt die Position von "ABC" innerhalb von MeinText zurück (beginnend mit 0). Wenn der String nicht enthalten ist, wird -1 zurück gegeben.
0 würde zurück gegeben, wenn ABC am Anfang von MeinText stünde.
siehe
http://de.selfhtml.org/javascript/objekte/string.htm#index_ofText auf der pageschreibe im body, dort wo der Text stehen soll:
<div id="AusgabeText"></div>
und ersetze
alert("01 ausgewählt");
durch
document.getElementById("AusgabeText").innerHTML = "01 ausgewählt";
Oder aber Sinnvoller:function TextAusgabe(text)
{
document.getElementById("AusgabeText").innerHTML = text;
}
und das "alert" ersetzen durch:
TextAusgabe("01 ausgewählt");
Antwort 8 von _mpact vom 10.08.2019, 10:55 Options
wahnsinn! das ja super! Funktioniert einwadfrei. Vor allem die "sinnvollere" methode find ich schön, mit dem funktionsaufruf in der funktion ^^
Toll is das man in dem Text den man der Funktion dann mitgibt sogar tags reingebne kann! Wunderschöne sache :-)
Vielen Dank!
Werde die nächsten Tage warscheinlich öfters mal was hier fragen, Augen offen halten ;-)
MfG !mpact
Antwort 9 von kicia vom 10.08.2019, 12:18 Options
viel spaß damit :)
am wochenende bin ich nicht online, aber es finden sich hier ja bestimmt auch andere helfende Geister. Ansonsten bis nächste Woche.
Gruß kicia