Vérifier plusieurs textbox [Résolu]

Messages postés
54
Date d'inscription
dimanche 22 septembre 2002
Dernière intervention
22 avril 2011
- - Dernière réponse : crahier
Messages postés
54
Date d'inscription
dimanche 22 septembre 2002
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 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
54
Date d'inscription
dimanche 22 septembre 2002
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 118 internautes nous ont dit merci ce mois-ci

Commenter la réponse de crahier
Messages postés
6069
Date d'inscription
dimanche 13 avril 2003
Dernière intervention
15 juillet 2011
23
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
Dernière intervention
22 avril 2011
0
Merci
Bonjour,

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

Christophe
Commenter la réponse de crahier

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.