Laden...

Eingabefenster + vorgehensweise

Erstellt von Taucher vor 15 Jahren Letzter Beitrag vor 15 Jahren 4.792 Views
T
Taucher Themenstarter:in
307 Beiträge seit 2008
vor 15 Jahren
Eingabefenster + vorgehensweise

Hallo Gemeinde,
ich habe vor über ein 2tes Fenster dem Benutzer Eingaben machen zu lassen und wollte mal in die Runde fragen wie ich da am besten vorgehen könnte.

J
237 Beiträge seit 2008
vor 15 Jahren

Du kannst auf der ASP.NET-Optionen-Seite die Einagben durch einen Button mit Click-Ereignis validieren und da greifst du dann auf Request.Params["Name_des_Feldes"] zu.
Dann kannst du die Optioen ja in einer Session speichern, so dass sie auf der normalen Seite verfügbar sind.

Beim Programmieren löst man die Probleme, die man nicht hätte, programmierte man nicht.

T
Taucher Themenstarter:in
307 Beiträge seit 2008
vor 15 Jahren

Danke für den Tipp. Und wie öffne ich am besten das 2te Fenster? Mit Javascript wäre etwas ungünstig, da der Dialog unabhängig sein soll. Ansonsten kenne ich nur den Response.write-Befehl.

J
237 Beiträge seit 2008
vor 15 Jahren

Erstmal, das von vorhin war für WinForms, aber es geht dir ja um ASP.NET-Seiten?
Für die Sessions siehe: Wert in Server-Zwischenspeicher? [WEB]

Du kannst beim Link das Attribut target="_blank" setzten.

Beim Programmieren löst man die Probleme, die man nicht hätte, programmierte man nicht.

T
Taucher Themenstarter:in
307 Beiträge seit 2008
vor 15 Jahren

Versteh ich jetzt nicht den Link, da gehts um einen Fileupload, nicht um das was ich suche.
Ich suche die Möglichkeit, ein 2tes Eingabefenster zu öffnen, ohne zusätzliche Datei und ohne Javascript wenns geht. In diesem Fenster soll der Benutzer Eingaben machen können die anschliessend auch ausgewertet werden müssen.

J
237 Beiträge seit 2008
vor 15 Jahren

Ja, aber dort sind Links, die zeigen, wie man mit den Sessions Daten für alle Webseiten erreichbar speichern kann.
Es ist dafür, dass die Seite, die das Optionenfesnter zeigt, ja auch "wissen" muss, was der Nutzer nun eingegeben hat. Dafür kannst du dann Sessions benutzten.
Eigentlich ganz einfach:


Session["derOptioenName"] = "dieOption";
string dieOption = Session["derOptioenName"].ToString();

Es geht ja um ASP.NET-Seiten oder? (Stehe grad ein bissl aufm Schlauch)
Soll es denn nur ein Eingabefeld sein oder mehrere?

Beim Programmieren löst man die Probleme, die man nicht hätte, programmierte man nicht.

T
Taucher Themenstarter:in
307 Beiträge seit 2008
vor 15 Jahren

Ja, es geht um Web-Geschichten. Das Speichern der Werte selbst ist nicht mein Problem, sondern das Öffnen des 2ten, also zusätzlichem Fenster.

J
237 Beiträge seit 2008
vor 15 Jahren

Ja, Danke. Jetzt habe ich es verstanden (bin manchmal etwas langsam...).
Wenn das Eingabefenster eine ASP.NET-Seite mit versch. Eingabefeldern ist und du einen Link zum aufrufen hast, benutze
<a href="..." target="_blank">.
Das müsste die Seite in einem neuen Fenster öffnen.

Beim Programmieren löst man die Probleme, die man nicht hätte, programmierte man nicht.

T
Taucher Themenstarter:in
307 Beiträge seit 2008
vor 15 Jahren

Ja, Danke. Jetzt habe ich es verstanden (bin manchmal etwas langsam...).

merke ich gerade 😉
Es soll ohne 2te Datei funktionieren und ohne Javascript wenn möglich.

J
237 Beiträge seit 2008
vor 15 Jahren

Also soweit ich weiß, ist es nicht möglich.
Mit JavaScript würde es funktionieren, ein Fenster zu öffnen und dort den HTML-Code dynamisch hineinzuschreiben.
Frag mich aber bitte nicht wie, ich habe das nur noch wage in Erinnerung.
Vl. kannst du ja "in fenster dynamisch html code schreiben mit javascript" oder so googeln.

Ich hoffe ich konnte dir wenigstens ein bisschen helfen.

Beim Programmieren löst man die Probleme, die man nicht hätte, programmierte man nicht.

T
Taucher Themenstarter:in
307 Beiträge seit 2008
vor 15 Jahren

Leider nein, aber trotzdem danke für Deine Bemühungen!

5.941 Beiträge seit 2005
vor 15 Jahren

Hallo Taucher

Was genau möchtest du erreichen (Ablauf).
Was hast du dir schon überlegt / oder schon probiert?

Sessions sind für sowas nicht nötig und eher falsch am Platz, siehe auch:

Gruss Peter

--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011

X
1.177 Beiträge seit 2006
vor 15 Jahren

Es soll ohne 2te Datei funktionieren und ohne Javascript wenn möglich.

<a href="..." target="_blank">

Naja, Peter Bucher anschliess - html sollte man aber trozdem schon kennen / interpretieren können.

🙂

Xynratron

Herr, schmeiss Hirn vom Himmel - Autsch!

Die Erfahrung zeigt immer wieder, dass viele Probleme sich in Luft auslösen, wenn man sich den nötigen Abstand bzw. Schlaf gönnt.

T
Taucher Themenstarter:in
307 Beiträge seit 2008
vor 15 Jahren

Was ich erreichen möchte ist im Prinzip ganz einfach.
Ich habe ein Control was mir bestimmte Daten anzeigt. Dieses Control wird je nach Bedarf in die Seite eingebunden.
Jetzt will ich, dass man zu bestimmten angezeigten Positionen einen Kommentar hinterlassen kann. Die Eingabe des Kommentars sollte über ein 2tes Fenster geschehen.

Peter Bucher

Da das Control dies unabhängig von der aspx-Seite erledigen soll ist mir bisher nur Javascript eingefallen. Entweder das ich den Javascriptcode irgendwo im Control-Html-Code platziere, was zwar nicht RFC-Conform ist, aber funktionieren würde, oder beim Aufbau des Controls den Code als onclick-Event hinterlege. Letzteres ist aber nicht sonderlich performant weil ich dann sehr viel Code bei jedem Button hinterlegen müsste.
Dann kam mir noch in Gedanken es über Events zu steuern, wodurch das Control dann aber nicht mehr ohne die aspx-Seite alleine agieren kann.
Deshalb meine Frage nach der Vorgehensweise bzw. gibt es in Asp.net einen Befehl mit dem ich genau das erreichen kann?
Ich hoffe ihr versteht was ich meine.

Xynratron
Naja, Peter Bucher anschliess - html sollte man aber trozdem schon kennen / interpretieren können.

Ich weiß nicht was Du meinst!?

B
114 Beiträge seit 2007
vor 15 Jahren

Die einfachste Möglichkeit wäre wohl ein 2. Fenster per Javascript zu öffnen.
Du kannst ja so auch die Ursprungsseite selbst aufrufen mit ein paar Parametern um die Ausgabe zu steuern, damit du keine 2. Datei erstellen musst. Find ich aber Blödsinn und unsauber. Über die dialogarguments kannst du auch noch ein paar Infos vom Popup an den Aufrufer zurückgeben um bspw. ein Postback zu erzwingen.
Ein anderer Weg wäre über ein dynamisches DIV in dem der Kommentar eingegeben wird. Unschön ist hier der Postback den du zum Speichern brauchst, ausser natürlich du regelst das irgendwie über Ajax o.ä.

T
Taucher Themenstarter:in
307 Beiträge seit 2008
vor 15 Jahren

danke für die Hinweise. Dann werde ich das mal versuchen...

5.941 Beiträge seit 2005
vor 15 Jahren

Hallo zusammen

Wieso ist ein Postback unschön? 😉
Ich würde da kein Gemurkse mit Javascript machen (wie von dir, Taucher - vorgeschlagen).

Sondern einfach eine zweite (oder die gleiche) ASPX-Seite mit Parametern aufrufen, sodass du die Daten holen und speichern kannst.
Damit die Daten beim Verlassen des Fensters aktualisiert sind, kannst du per Javascript den opener aktualisieren.

Gruss Peter

--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011