Programmieren - alles kontrollieren 4.934 Themen, 20.613 Beiträge

ASP.NET C#: "Bitte warten"-Meldung

Yves3 / 3 Antworten / Flachansicht Nickles

Hallo,

Beim Abschicken eines Formulars müssen auf dem Server verschiedene relativ zeitintensive Operationen durchgeführt werden. Der Benutzer sollte direkt nach dem Abschicken darüber informiert werden ("Bitte warten"-Meldung).
Meine erste Idee war Javascript, das gibt aber zwei Probleme:
1. Javascript muss eingeschaltet sein.
2. Ich führe direkt nach dem Abschicken eine serverseitige Validierung der Eingaben durch. Falls das Resultat ungültig ist, wird innert kürzester Zeit eine entsprechende Meldung zurückgegeben.
Das kann ich aber zum Zeitpunkt, wo ich die Javascript-Meldung ausgebe, noch nicht wissen. Das führt dazu, dass die "Bitte warten"-Meldung nur kurz (kaum lang genug um gelesen werden zu können) aufblinkt, und dann die entsprechende Meldung aus der Validierung erscheint, was leider sehr unprofessionell wirkt.

Falls ich die ganze Validierung nicht doppelt (Server -und Clientseitig) machen will, muss diese Meldung aus meiner Sicht irgendwie vom Server kommen. Leider habe ich keine Ahnung, wie das gehen könnte. Soviel ich weiss gibt es nämlich auf eine Anfrage vom Client eine Antwort vom Server und es ist nicht möglich zwei aufeinanderfolgende Antworten zu geben.

Kennt sich hier jemand mit ASP.NET aus und kann mir helfen?

Vielen Dank im Voraus!

bei Antwort benachrichtigen
Hanussen Yves3 „ASP.NET C#: "Bitte warten"-Meldung“
Optionen

Du könntest per pseudo-"Ajax" einen WebService nach dem Status fragen und Java-Seitig über die Auswertung des ActiveXObject("Microsoft.XMLDOM") :

// 0 object is not initialized
// 1 Loading object is loading data
// 2 Loaded object has loaded data
// 3 Data from object can be worked with
// 4 Object completely initialized

den Client dann zu einer anderen Seite weiterleiten.

Oder du baust das komplette Dokument auf Ajax um und prüfst bei jeder Eingabe das entsprechende Eingabefeld server-seitig durch partiellen Refresh.

MfG Hanussen

bei Antwort benachrichtigen