Schlupp: Wie kann ich in Frames Anker setzen?

Hallo @ll,

ich habe Probleme mit Ankern, die ich in einem anderen Frameset ansprechen will, hat da wohl jemand eine Lösung für mich ?

Ich definiere einen Link: http://www.smdelta.de/csupport/cs_contfr_2.asp
in einer Seite http://www.smdelta.de/csupport/dverref.asp einfach so:

http://www.smdelta.de/csupport/cs_contfr_2.asp?Anchor=<ankername>

In dem dann aufgebauten Frameset (cs_contfr_2.asp):

<frame name="conthead" scrolling="NO" noresize    src="cs_conthead_2.asp" >
<frame name="content#<%=Request("anchor")%>" src="ddocs1.asp">

Oder habe ich irgendwie ein Fehler mit der Wertübergabe oder der Variablendeklaration?
DANKE!

Schlupp

  1. Hättest Du mal im Archiv nachgeschaut

    Gruß Stephan

    1. Hättest Du mal im Archiv nachgeschaut

      Gruß Stephan

      Das habe ich auch getan, aber der Quellcode funktioniert so leider nicht!!

    2. Hallo Schlupp!

      Wie konnte Stephan auch wissen, dass Du auch Manuel heißt? <110637.html>
      Weiterhin war dem Auszug aus dem Forumsarchiv zu entnehmen, dass Du Dich bei Stefan Falz per Mail melden solltest. Hast Du das getan?

      Wie dem auch sei, habe ich das ursprüngliche Skript von Stefan Falz angeguckt und habe bei mir festegstellt, dass es funktioniert. Ich bin genau zu dem Anker weitergeleitet worden. Also bin ich auf Deine Seite geangen und habe mich durch einen Klick auf das Handbuch auf die nächste Seite bewegt. Dort habe ich mir dann Dein Frameset mal angeschaut:
      <%@ language="VBSCRIPT" %>
      (...)
      soll das eigentlich wirklich da stehen?
      (...)
      <frameset rows="100,*" frameborder="0" border="0" framespacing="0">
        <frame name="conthead" scrolling="NO" noresize src="cs_conthead_2.asp" >
        <frame name="content" src="ddocs1.asp">  <noframes>
      <body bgcolor="#FFFFFF">
      (...)
      Wie man hier schön erkennen kann, steht dort nicht "content#Entwicklungsumgebung1"! Nach dem Vorschlag von Stefan Falz sollte das aber hier stehen. Darauf hättest Du aber auch selber kommen können.

      Gruß,
      Daniel

      1. Wie man hier schön erkennen kann, steht dort nicht "content#Entwicklungsumgebung1"!

        Kann ich denn anstatt "content#Entwicklungsumgebung1" auch eine Variable dort übergeben? Denn ich habe ja mehrere solcher Links!!

        1. Hallo Schlupp! <-- selfverständlich

          Also, ich würde Dich bitten, Dir dies mal durchzulesen: http://www.teamone.de/selfaktuell/forum/forumsfaq.htm. Ich glaube Du würdest Dich damit viel beliebter machen.
          So jetzt wieder zu Deinem Problem:
          In der Lösung von Stefan Falz steht doch genau dies drin. Du übergibst Deinen Anker an das Frameset via "Get". Da das Frameset bei Dir als *.asp-Datei eigentlich ausgeführt werden soll, wird der Request dann auch ausgewertet und an den Namen des Frames angeheftet.
          <frame name="conthead" scrolling="NO" noresize src="cs_conthead_2.asp" >
          <frame name="content#<%=Request.Querystring("anchor")%>" src="ddocs1.asp">

          Alles klar? Falls Du weiterhin Probleme damit haben solltest, würde ich Dir empfehlen, ein Buch über ASP zu besorgen. Ich arbeite mit Tobias Weltner, ASP lernen und beherrschen. Man beherrscht ASP zwar dann immer nooch nicht, kommt aber dann vielleicht auf ganz gute Ideen.

          Gruß,
          Daniel

          1. <frame name="conthead" scrolling="NO" noresize src="cs_conthead_2.asp" >
            <frame name="content#<%=Request.Querystring("anchor")%>" src="ddocs1.asp">

            DANKE erstmal...aber leider funktioniert das immernoch nicht.Beim laden des Framesets bricht der Browser (IE5.5) ab bzw. er kann das content nicht laden.

  2. Hallo,
    ich verweise von einer Seite (a) auf eine andere Seite (b).
    Die Links von a nach b sehen so aus:
    b.asp?var=ddocs1.asp#anker1
    b.asp?var=ddocs1.asp#anker2
    usw.

    in dem Frameset b möchte ich nun die durch den Link von a übermittelte Datei mit Anker in dem unteren Frame (content) laden.
    <frame name="conthead" scrolling="NO" noresize src="conthead_2.asp">
    <frame name="content" src="<% =Request.QueryString("var")%>">

    Aber der Browser kann die Seite im content nicht finden, mache ich da etwas falsch?
    DANKE schonmal!

    Schlupp

    1. Hallo Schlupp!

      So ich habe Deinen Fehler gefunden! Die Lösung verrate ich Dir auch, wenn Du hoch und heilig versprichst, die Forumsfaq zu beachten. Der Fehler ist wahrlich trivial. Versuche doch mal bitte die Seite <http://www.smdelta.de/csupport/ddocs1.asp#<Entwicklungsumgebung1>> und http://www.smdelta.de/csupport/ddocs1.asp#Entwicklungsumgebung1. Fällt Dir was auf? Den Anker "#<Entwicklungsumgebung1>" gibt es überhaupt nicht.... So sollte Dein Frameset aussehen:
      <% Response.Expires=0 %>
      <% Response.Buffer=true %>
      <html>
      <head>
      <title>Hier ein Titel</title>
      </head>
      <%
      anker=Request.Querystring("anchor")
      %>
      <frameset rows="100,*" frameborder="0" border="0" framespacing="0">
        <frame name="conthead" scrolling="NO" noresize src="http://www.smdelta.de/csupport/cs_conthead_4.asp" >
        <frame name="content" src="http://www.smdelta.de/csupport/ddocs1.asp#<%=anker%>">  <noframes>
      <body bgcolor="#FFFFFF">
      Hallo, Frames werden leider nicht von Ihrem Browser unterstützt!!
      </body>
        </noframes>
      </frameset>
      </html>
      Und der Aufruf muss mit http://www.smdelta.de/csupport/cs_contfr_2.asp?anchor=Entwicklungsumgebung1 erfolgen!

      Gruß,
      Daniel

      1. Hallo Daniel,

        DANKE DANKE...aber leider springt die Seite nicht zu dem Anker sondern immer nur an den Anfang: Kannst wohl nochmal nachschauen?
        http://www.smdelta.de/tets/start.asp
        dann auf "Versionreferenz" danach auf eines der ersten beiden Handbücher (von Scout²) denn da liegen die Links die zum neuen Frameset führen.

        1. Hallo Schlupp!

          Deine ASP-Seite wird nur nicht Server-Seitig ausgeführt. Bei mir komt der ASP-Code nämlich mit an:
          <%@ language="VBSCRIPT" %>
          <!--#include file="../asplogin.asi"-->
          (...)ASP (...)
          <% Response.Expires=0 %>
          <% Response.Buffer=true %>
          <%
          anker=Request.Querystring("anchor")
          %>
          (...)ASP (...)
          <frame name="content" src="ddocs1.asp#<%=anker%>">
          (...)ASP (...)

          Bei mir hat es nämlich funktioniert. Ich habe das Frameset lokal mit absoluter Refernzierung aufgerufen und es wurde auch die entsprechende Stelle gefunden. Du solltest um so etwas auf die Spur zu kommen die Frames mal in einem neuen Fenster aufrufen (bzw. die Eigenschaften ansehen) und Dir den Frameset-Quellcode anschauen (über Menüleiste Quelltext anzeigen lassen). Und jetzt mache ich Feierabend...

          Gruß,
          Daniel

          1. Hey DANKE DANKE DANKE...
            Es läuft :-) endlich.
            Werde mich demnächst an die Forum-Regeln halten!
            CU
            und schönen Feierabend

            Schlupp