Holger: Reload

ich habe eine frage bezüglich dem neuladen einer asp-datei...
folgendes problem stellt sich mir:

ich möchte in einer asp-datei (sprich: html mit serverseitigem script) angezeigte werte ändern (im detail: zwischen dm und euro wechseln). ich habe zwar theoretisch bereits eine lösung, die ist aber viel zu aufwendig!

ich habe in einem formular einen button definiert, der das switchen übernehmen soll.
ich habe allerdings bereits einen anderen button, der vom typ submit ist, also habe ich nun einen href definiert, der diese javascript-funktion dann aufruft:

function waehrungNeu()
  {
location.search = "?waehrung_neu=yes";
location.reload();
  }

mit der ersten angabe will ich erreichen, daß beim neuladen im serverseitigen asp-script die werte entsprechend neu gesetzt werden...
dies klappt aber leider so nicht, da ich formulardaten bereits mit POST an die asp-datei vorher übergeben bekommen habe, und diese beim reload dann gelöscht werden (nur, wenn ich in location.search etwas reinschreibe)!

gibt es eine lösung für obiges problem?
ich hoffe, ich habe es einigermaßen verständlich erklärt (glaube ich zwar nicht ganz, aber vielleicht gehts ja so)... ;-)
wer kann mir helfen??

vielen dank bereits im voraus für die hilfe!

  1. Hallo Holger

    ich möchte in einer asp-datei (sprich: html mit serverseitigem script) angezeigte werte ändern (im detail: zwischen dm und euro wechseln). ich habe zwar theoretisch bereits eine lösung, die ist aber viel zu aufwendig!

    Muss es denn serverseitig geloest werden? Es ist nun mal aufwendig, wegen einer kleinen dynamischen Aenderung auf einer Seite jedesmal vom Server eine neue Version der ganzen Seite anzufordern. Fuer eben diesen Zweck wurde ja Dynamic HTML erschaffen! Das genau sind ja gerade die sinnvollen Anwendungsfaelle fuer DHTML (und nicht die fliegenden Schriftzuege).
    Mit einem browser-unabhaengigen Script sollte es sicher moeglich sein, Bereiche, in denen DM- und Euro-Angaben vorkommen, so zu definieren, dass sie sich dynamisch mit JavaScript aendern lassen. Dazu wird man wegen Netscape ein paar Zwaenge bei der Formatierung beachten muessen, aber sonst sollte es gehen.
    Funktioniert dann natuerlich nur mit den Browsern der 4er-Generation und drueber. Das ist der einzige Nachteil. Man koennte es aber zumindest so schreiben, dass aeltere Browser einfach nichts tun. Und wer heute noch mit Netscape 3 unterwegs ist, wird wohl auch den Euro nicht so schnell brauchen und sich mit der DM-Angabe begnuegen <g>.

    viele Gruesse
      Stefan Muenz

    1. hallo stefan!

      danke für deine antwort erstmal! :-)

      Muss es denn serverseitig geloest werden? Es ist nun mal aufwendig, wegen einer kleinen dynamischen Aenderung auf einer Seite jedesmal vom Server eine neue Version der ganzen Seite anzufordern. Fuer eben diesen Zweck wurde ja Dynamic HTML erschaffen! Das genau sind ja gerade die sinnvollen Anwendungsfaelle fuer DHTML (und nicht die fliegenden Schriftzuege).

      diese lösung hatte ich mir u.a. auch schon überlegt...
      ich habe damit aber das problem, daß ich sehr viele seiten ändern müßte!
      ich habe einige kleine serverseitige vbscript-funktionen geschrieben, die die ausgabe abhängig von einer asp-session-variablen macht. dann wollte ich die entsprechende include-datei eigentlich nur noch jeweils einfügen und einen button definieren, der den switch übernimmt.
      die dhtml-lösung ist sicherlich die bessere, aber leider in meinem fall die weitaus aufwendigere... :-(
      ich möchte halt so wenig wie nötig ändern... das verfahren klappt bereits bei einer seite, aber dort habe ich auch die übergebenen formulardaten als session-variablen nochmals gespeichert, so daß ein reload kein problem macht! aber bei einigen anderen asp-seiten ist das leider nicht der fall.

      gibt es keine möglichkeit in der art, wie ich es vorhatte??

      danke für deine bemühungen! :-)
      gruß, holger.

  2. Hallo Holger,

    es ist eigentlich zimlich wurscht wieviele Knöpfe du in deiner Seite hast ... wenn du jedem Knopf den gleichen Namen gibst, kannst du die Action hinterher mit einer CASE-ASP Abfrage wie unten gezeigt abfragen.

    <html>

    <head>
    <title>Homepage</title>
    <meta name="GENERATOR" content="Microsoft FrontPage 3.0">
    <meta name="Microsoft Theme" content="none, default">
    <meta name="Microsoft Border" content="none, default">
    </head>

    <body>
    <%
    Select Case Request.Form("Action")
    Case "New"
      Response.write "New"
      
    Case "Change"
      Response.write "Change"
    end Select
    %>

    <form name="Requesting" method="POST" action="default.asp?">
      <p><input type="submit" value="New" name="Action" style="font-size: 1pt"> <input
      type="submit" value="Change" name="Action" style="font-size: 1pt"> </p>
    </form>
    </body>
    </html>