Überprüfung funkt nicht

Mudknot

Mitglied
Hallo Leute!

Ich habe folgendes Problem


Also ich habe da 4 Eingabe felder Wenn in das erste eine Zahl geschrieben wird muss man in die anderen drei eine Prozentzahl eingeben Ich überprüfe das mittels CustomValidator.

Das sieht dann bei mir so aus:

Html Seite:
<asp:customvalidator id="Cust1" Display="none" ErrorMessage="Die von ihnen eingegebenen Pozente müssen 100% ergeben!" Runat="server" EnableClientScript="true" OnServerValidate="Check">
</asp:customvalidator>
<asp:validationsummary id="Summary" Runat="server" ShowSummary="True" HeaderText="Bitte <b>korrigieren</b> Sie folgende Fehler:"
CssClass="Errortext">
</asp:validationsummary>

Code Behind:
Sub Check (Source as Object, args as ServerValidateEventArgs)
If val(Wert1.Text) = 0 then
args.IsValid = True
ElseIF not val(Wert2.text) + val(Wert3.Text) + val(Wert4.Text) = 100 then
args.IsValid = False

End If
End Sub

Und dann hab ich noch nen WeiterButton:
Sub AuswertungButton_Click(sender As Object, e As EventArgs)
Response.Redirect ("Auswertung.aspx")
End Sub


So und hier das Problem, wenn ich jetzt auf den Button drück wird ohne zu Überprüfunen auf die nächste Seite gewechselt
Wie kann ich das bloss machen, dass die Eingabefelder so überprüft werden?
Bin schon am Verzweifeln Hätt ne Lösung gefunden ohnen den Auswertungbutton aber diesen brauche ich leider

Hoffentlich kann mir wer helfen und versteht mein Problem

Lieben Gruss Mudy
 
Sub AuswertungButton_Click(sender As Object, e As EventArgs)
Response.Redirect ("Auswertung.aspx")
End Sub

ist das der Code vom Auswertungsbutton? Wenn ja, musst du da doch noch die sub check aufrufen.


P.S. der Thread gehört eigentlich ins ASP.NET Forum
 
Ja das ist der Code vom AuswertungButton. Hmmmm, wie kann ich bitte Sub Check im Sub AuswertungButton_Click aufrufen

Wenn du bitte so nett wärest


Lg, Mudy
 
hab jetzt kein .Net vor mir und ASP.NET ist auch schon länger her.

ach jetzt glaub ich verstehe ich. Check wird ja immer selber aufgerufen, wenn du was in den Textfeldern änderst.

Ich glaube du must im AuswertungButton abfragen ob die Eingaben korrekt sind oder nicht.
Frag doch einfach den args.IsValid ab. Wenn der True ist machst du weiter und wenn er False ist, bleibst du auf der Seite und gibst ein Fehler aus
 
Wenn ich das so mache funktioniert es einwandfrei nur muss ich leider mittels dem AuswerungButton_Click auf die nächste Seite:

So gehts super:
Sub Check (Source as Object, args as ServerValidateEventArgs)

If val(Wert1.Text) = 0 then
args.IsValid = True
ElseIF not val(Wert2.text) + val(Wert3.Text) + val(Wert4.Text) = 100 then
args.IsValid = False
Else
Response.Redirect ("Auswertung.aspx")
End If


End Sub

Und wenn ich das args.IsValid im Sub AuswertungButton_Click überprüfe erkennt ers nicht Komm da einfach nicht drauf

Mfg, Mudy
 
Habs herausgefunden:

Man muss einfach im AuswertungButton_Check prüfen ob ein Fehler vorhanden ist.

Das sieht dann so aus:

Sub AuswertungButton_Click(sender As Object, e As EventArgs)
If Page.IsValid = True then
Response.Redirect("xyxyxyxyxyxy.aspx")
End if
End Sub
 
Zurück