Salut
J'ai mis en place des contrôles dans ma page par le CodeBehind. J'ai fait un RequierdFieldValidator et un RegularExpressionValidator et un Bouton.
Lorsque je clique sur le bouton, le RegularExpression marche bien, mais pas le Requierd.
Si je mets les contrôles à la main côté HTML, tout marche bien. Je n'arrive pas à comprendre ce qui fais la différence.
Voici mon CodeBehind
Merci pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 Protected Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init Dim lblMail As New Label Dim txtMai As New TextBox Dim btnEnvoi As New Button Dim tblContact As New Table Dim rMail, rBouton As New TableRow Dim clMail, ctMail, cBouton As New TableCell Dim revMail As New RegularExpressionValidator Dim cvMail As New RequiredFieldValidator lblMail.Text = "Mail " txtMail.ID = "txtMail" With btnEnvoi AddHandler btnEnvoi.Click, AddressOf EnvoiContact .Text = "Envoyer message" .ValidationGroup = "ValidMail" End With With revMail .ErrorMessage = "Votre adresse mail ne semble pas correcte" .ToolTip = "Votre adresse mail ne semble pas correcte" .ValidationExpression = "^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$" .ControlToValidate = txtMail.ID .ValidationGroup = "ValidMail" End With With cvMail .ErrorMessage = "Une adresse mail est obligatoire" .ControlToValidate = txtMail.ID .ValidationGroup = "ValidMail" .ToolTip = "Une adresse mail est obligatoire" End With clMail.Controls.Add(lblMail) ctMail.Controls.Add(txtMail) cBouton.ColumnSpan = 2 cBouton.Controls.Add(btnEnvoi) cBouton.Controls.Add(revMail) rMail.Cells.Add(clMail) rMail.Cells.Add(ctMail) rBouton.Cells.Add(cBouton) tblContact.Rows.Add(rMail) tblContact.Rows.Add(rBouton) Me.Controls.Add(tblContact) End Sub Sub EnvoiContact(ByVal sender As Object, ByVal e As System.EventArgs) Logage("un contact : " & CType(FindControl("txtMail"), TextBox).Text) End Sub
Partager