Vérifier plusieurs textbox [Résolu]

Messages postés
54
Date d'inscription
dimanche 22 septembre 2002
Statut
Membre
Dernière intervention
22 avril 2011
- - Dernière réponse : crahier
Messages postés
54
Date d'inscription
dimanche 22 septembre 2002
Statut
Membre
Dernière intervention
22 avril 2011
- 28 juin 2010 à 15:05
Bonjour,

Dans un formulaire, j'ai un tableau qui contient plusieurs lignes.

Chaque ligne est composée de 2 textbox et 2 radiobuttonlist.

Ce que je dois faire, c'est vérifier pour chaque ligne que si le 1er textbox est complété, que toutes les autres données sur la même ligne le soit également.

Je pensais utiliser un customvalidator.

Le problème, c'est que même si une ligne n'est pas valide (donc qu'il manque des infos), le submit du form a quand même lieu, le "Page.IsValid" est = à true et je ne comprends pas pourquoi.

Voici un petit bout de code plus explicite :

<script runat="server">
    void VerifData(CustomValidator validator, TextBox tbNom, TextBox tbAge, RadioButtonList rblBBQ, RadioButtonList rblGouter)
    {
        validator.IsValid = false;
        if (Convert.ToInt32(rblYesNo.SelectedValue) == 1)
        {
            if (string.IsNullOrEmpty(tbNom.Text) == false)
            {
                if (string.IsNullOrEmpty(tbAge.Text) false || rblBBQ.SelectedItem null || rblGouter.SelectedItem == null)
                {
                    validator.IsValid = false;
                }
                else
                {
                    validator.IsValid = true;
                }
            }
        }
    }        
    
    void verif0(object source, ServerValidateEventArgs args)
    {
        VerifData(valTxt0, txtNom0, txtAge0, rblBBQ0, rblGouter0);
    }
</script>


Et dans mon formulaire :


                


Merci d'avance pour votre aide,

Christophe
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
54
Date d'inscription
dimanche 22 septembre 2002
Statut
Membre
Dernière intervention
22 avril 2011
3
Merci
Voici la solution :

protected bool VerifData(CustomValidator validator, TextBox tbNom, TextBox tbAge, RadioButtonList rblBBQ, RadioButtonList rblGouter)
        {
            bool res = true;
            if (Convert.ToInt32(rblYesNo.SelectedValue) == 1)
            {
                if (string.IsNullOrEmpty(tbNom.Text) == false)
                {
                    if (string.IsNullOrEmpty(tbAge.Text) true || rblBBQ.SelectedItem null || rblGouter.SelectedItem == null)
                    {
                        res = false;
                    }
                    else
                    {
                        res = true;
                    }
                }
            }
            return res;
        }
        
        protected void verif0(object source, ServerValidateEventArgs args)
        {
            args.IsValid = VerifData(valTxt0, txtNom0, txtAge0, rblBBQ0, rblGouter0);
        }


Christophe

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 195 internautes nous ont dit merci ce mois-ci

Commenter la réponse de crahier
Messages postés
6063
Date d'inscription
dimanche 13 avril 2003
Statut
Modérateur
Dernière intervention
15 juillet 2011
22
0
Merci
Salut,

Tu as une utilisation du controle ici

Et donnes le pourquoi quand tu as trouvé la réponse à ton problème.

Bon dev
Commenter la réponse de nhervagault
Messages postés
54
Date d'inscription
dimanche 22 septembre 2002
Statut
Membre
Dernière intervention
22 avril 2011
0
Merci
Bonjour,

Merci, m'en vais aller lire tout ça.

Christophe
Commenter la réponse de crahier