Benutzerdefinierte Validator-nicht feuern
Ich weiß, es gibt viele ähnliche Beiträge, aber ich habe nicht eines gefunden, das funktioniert bei mir leider nicht. Im Grunde genommen habe ich einen asp:customvalidator, daß ich versuche, Sie zu einer validationgroup mit anderen Prüfern, so dass alle Fehlermeldungen werden in die gleiche Warnmeldung. Hier wird der customvalidator -
<asp:TextBox runat="server" ID="txtVideo1Url" Columns="20" Width="98%" />
<asp:CustomValidator runat="server" ID="valURL1" ControlToValidate="txtVideo1Url" OnServerValidate="txtVideo1Url_ServerValidate" Display="None" ValidationGroup="submission" />
und hier ist die Veranstaltung
protected void txtVideo1Url_ServerValidate(object sender, ServerValidateEventArgs e)
{
e.IsValid = false;
valURL1.Text = "FAIL!";
}
Des Events nicht feuern alle und ich habe keine Ahnung, warum. Einmal bekomme ich das Ereignis auslösen, ich kann etwas Logik hinein, lol
UPDATE: ich habe bemerkt, dass ich bin jetzt in der Lage, das Ereignis auslösen, aber das validationsummary eingestellt ist Anzeige aller Fehler in einer messagebox und dieser Fehler ist nicht immer Hinzugefügt, um die messagebox.
UPDATE
ist, dass CustomValidator
ist eine rein server-seitige Validierung-Mechanismus, während die MessageBox
- Funktion ist eine client-side-Mechanismus, so ist es zu spät, um die CustomValidator
Nachricht in das MessageBox
.InformationsquelleAutor Mark Highfield | 2013-06-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie die
CausesValidation
Eigenschaft desTextBox
zutrue
wie diese:Wie die andere Antwort sagt (Ilkka) die
ValidationGroup
Attribut ist das Problem, entfernen Sie es oder fügen Sie es dem control, das das postback.InformationsquelleAutor Karl Anderson
Daran zu setzen Sie diese Eigenschaft auf den CustomValidator...
Danke. Mein event wurde nicht gefeuert, weil die Steuerung zu validieren, wurde der string leer
Dies ist der Weg, es zu tun, wenn Ihr CustomValidator überprüft die Werte der verschiedenen Steuerelemente.
InformationsquelleAutor Remotec
Müssen Sie ValidationGroup="Vorlage", um die ASP.NET Kontrolle, das Feuer der postback.
InformationsquelleAutor Ilkka
CustomValidators nicht ausgelöst, wenn die anderen Prüfer in Ihrer ASPx-nicht bestätigen. Möglicherweise müssen Sie zu zwingen, eine Seite.Validate("etwas"), mit Ihren spezifischen Validierungs-Gruppe. Ich schlage vor, schauen OnTextChanged event zu zwingen, eine Seite zu validieren.
InformationsquelleAutor Fandango68