Cochrane: detailierte Adresse ausblenden

Beitrag lesen

Hallo Zusammen

Ich verwende IIS und ich möchte in einem neuen Web nur eine Standardadresse im Adressfeld des Internet Explorers anzeigen.
Beispiel: Statt www.test.ch/bilder/bilder.html möchte ich nur www.test.ch anzeigen lassen. Mit einem Frameset wäre das zwar möglich, möchte aber lieber darauf verzichten.

Wie löst man sowas am einfachsten ?

Vielen Dank

Einfach? Gar nicht. Abgesehen von der Frage, wieso du dass machen wolltest und wieso du keinen Frame haben willst, ist die ganze Sache nicht leicht zu machen. Du musst sowohl mit JavaScript als auch mit ASP agieren, um das hinzubekommen.

1. Du müsstest auf jeder Seite ein Formular haben, welches nur aus versteckten Feldern besteht und die Index-Seite als Ziel hat. Ein verstecktes Feld reicht aus, welches den Pfad aufnimmt. Methode sollte POST sein, damit es nicht wie GET oben in der Leiste steht. Das sähe dann etwa so aus:
<form name="sowieso" action="index.asp" method="POST">
<input type="hidden" value="" name="adresse">
</form>

2. Jetzt brauchst du noch einen JavaScript-Code, der bei anklicken eines bestimmten Linkes die richtige Adresse in das Feld schreibt und dann das Feld abschickt.
<script language="JavaScript">
function einLink(adresse)
{
document.sowieso.adresse.value = adresse;
document.sowieso.submit();
}
</script>
und dazu die passenden Links. Statt
<a href="/ein/langer/pfad.htm">
müsste es heißen
<a href="javascript:einLink('/ein/langer/pfad.htm');">

3. Müsste jetzt noch die Startseite angepasst werden. Leider bin ich nicht sehr erfahren mit ASP, aber im wesentlichen sollte es etwa auf folgendes hinauslaufen:

if (<Adresse, die über POST kam> != "")
{
<Seite mit dieser Adresse einbinden>
}
else
{
<normalen index-inhalt ausgeben>
}