Frage

Ich habe eine Reihe von Textfeldern und eine Schaltfläche zum Speichern, um etwas zu aktualisieren.Wenn ich auf „Speichern“ klicke, befindet sich in der Code-Behind-Datei Code, der bestimmt, ob sie korrekt ausgefüllt sind.

Wenn sie nicht korrekt ausgefüllt sind, möchte ich eine Fehlermeldung in Form einer Warnung anzeigen.

Wie geht das am besten?Das Drücken der Schaltfläche führt offensichtlich zu einem Postback der Seite, daher habe ich darüber nachgedacht, der URL etwas hinzuzufügen, z. B mypage.aspx?errormessage=blahblah aber ich weiß nicht, ob das der beste Weg ist oder wie ich es machen soll ...

Irgendwelche Vorschläge?

War es hilfreich?

Lösung

Modal-Benachrichtigungen sind schlecht, als Postbacks sind. Versuchen Sie, so viel wie möglich auf der Client-Seite ohne Roundtrip zum Server zu überprüfen. Siehe jQuery Validation Plugins für eine weniger aufdringliche Art und Weise der Validierung.

Andere Tipps

Könnten Sie verwenden, um eine CustomValidator Client-Seite Skript auslösen, der eine Warnmeldung zeigt?

Sie könnten die ClientScript.RegisterStartupScript () -Methode in den Server-Fehlern verwenden, um Code Umgang mit einem Javascript-Schnipsel zu schreiben, die alert ( 'message') nennt, so etwas wie diese

private void ShowErrorMessage(string message)
{
    string script = "alert('" + message + "');";
    ClientScript.RegisterStartupScript(typeof(MyPage), "errorScript", script, true);
}

Aber ich würde Ihnen empfehlen, einen Validator stattdessen zu verwenden. Wenn Sie Ihren eigenen benutzerdefinierten Validator implementieren, können Sie es clientseitige Skript machen emittieren, die ausgeführt werden können, bevor die einreichen, um die Postbacks ganz zu vermeiden.

Eine gute Sache über Validatoren ist, dass ihre Fehlermeldungen können in einem ValidatorSummary auf der Seite angezeigt werden, das hässliche Warnfeld zu vermeiden.

Zunächst einmal werde ich nicht empfehlen, eine modale Warnmeldung an den Benutzer zeigt.

können Sie rufen eine JavaScript-Funktion von dem Server-Seite Code und in dieser Funktion können Sie den Fehler eingeblendet.

Sie können auch eine AJAX-Anforderung ausgeben und nach der Validierung auf Server-Seite können Sie eine Antwort an den Client zurückzuschicken.

ASP.NET die verschiedenen Validierungskontrollen (mit clientseitige Validierung aktiviert), gekoppelt mit dem richtigen Fehlermeldungen und / oder Zusammenfassung Nachricht wird für die meisten Szenarien gut genug sein.

‚AJAX fühlen und Verhalten‘, setzen die Kontrollen in einem Update wird einfach zu implementieren.

Verwenden Sie so oft wie möglich die alten Validatoren. Sie geben dem Client etwas Javascript aus, sodass Sie mit diesen Steuerelementen viele Validierungen durchführen können. Erst wenn alle zufrieden sind, kann die Seite übermittelt werden.

Sie werden bei jeder Übermittlung ausgelöst. Wenn Sie also nicht möchten, dass sie bei jeder Übermittlungsaktion ausgelöst werden, machen Sie die Steuerelemente zu einem Teil einer Validierungsgruppe.

Sie können Eingaben mithilfe regulärer Ausdrücke validieren, sicherstellen, dass ein Feld einen Wert hat, und es gibt noch einige weitere.

Dann gibt es eine Eigenschaft zum Deklarieren einer „Nachricht“ und ein Steuerelement zum Anzeigen aller Validatornachrichten.Alles sehr schick und direkt in die IDE integriert.

Schauen Sie sich die Validator-Kontrollen an.

Versuchen Sie den folgenden Code in Ihrer Schaltfläche klicken Ereignis:

string strErr="Error!";//Put your error message here
ClientScript.RegisterStartupScript(GetType(), "scrptName", "javascript: alert('"+strErr+"'); ", true);

Es wird eine Warnmeldung angezeigt.

Else ein Etikett auf Ihrer aspx Seite setzen und sichtbar falsch in page_load Veranstaltung. Wenn Fehler in der Schaltfläche Ereignisse auftreten setzte das Label Sichtbarkeit ‚true‘ und den Beschriftungstext mit der Fehlermeldung füllen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top