IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Validators activés au clic d'une checkbox


Sujet :

ASP.NET

  1. #1
    Membre averti
    Homme Profil pro
    Consultant SharePoint
    Inscrit en
    Mars 2006
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant SharePoint
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2006
    Messages : 270
    Points : 308
    Points
    308
    Par défaut Validators activés au clic d'une checkbox
    Salut
    Dans mon appli, j'ai un formulaire oà l'utilisateur doit renseigner des champs.
    Si il clic sur une checkbox, alors 3 trois champs sont obligatoires. Je n'arrive pas a mettre ça en place...quelqu'ub peut m'aider?

    (D'autres champs sont tout le temps obligatoires(required validator).)

  2. #2
    Membre expérimenté Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Points : 1 352
    Points
    1 352
    Par défaut
    Met un envenement javascript sur ta checkbox avec un tag declaré en variable globale en js.

    Et ensuite a la soumisssion de ton formulaire vois si ce tag est enclenché ou non, si il l'est alors fais la verification de tes trois champs obligatoires avant de permettre la validation.

  3. #3
    Membre averti
    Homme Profil pro
    Consultant SharePoint
    Inscrit en
    Mars 2006
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant SharePoint
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2006
    Messages : 270
    Points : 308
    Points
    308
    Par défaut
    apparemment j'ai un pb qui vient du fait que certains de mes validators sont vérifiés coté client (ceux toujours activés) et d'autre coté serveur (ceux qui dépendent de la checkbox).
    Le tout est placé dans un update panel...

  4. #4
    Membre expérimenté Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Points : 1 352
    Points
    1 352
    Par défaut
    Desolé, là je ne suis pas tres fort avec les objets dot net qui font du javascript, je fais encore tout a l'ancienne au niveau de mes contrôles , les mains dans le javascript jusqu'aux coudes...

  5. #5
    Membre expérimenté Avatar de bizet
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2005
    Messages
    717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 717
    Points : 1 338
    Points
    1 338
    Par défaut
    Pour faire la verif coté client donc par javascript, tu dois mettre l'attribut EnableclientScript à true.
    pour faire la verif coté serveur, avant de proceder a une action tu fais un if(IsValid){....}

    sache que si tu fais coté client, la vérification se fait également coté serveur. En fait la vérification se fait toujours coté serveur, client c'est toi qui détermine.

    Pour le système d'obligation, je pense que tu devrais mettre un validation summary pour tes trois champs obligatoires et faire cette validation uniquement si combobox coché.

  6. #6
    Membre averti
    Homme Profil pro
    Consultant SharePoint
    Inscrit en
    Mars 2006
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant SharePoint
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2006
    Messages : 270
    Points : 308
    Points
    308
    Par défaut
    ben justement (héhé ^^)
    en fait faut que je fasse tout en javascript (ca serait le mieux)...voila ce que j'ai fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <asp:CheckBox ID="CheckBoxTaskPeriodTrue" runat="server" Checked="false" Text="Oui" />
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <asp:TextBox ID="TextBoxTaskInitialDuration" runat="server" SkinID="TextBoxSkin01" />
    <asp:CustomValidator ID="CustomValidatorTaskInitialDuration" runat="server" ErrorMessage="message erreur" ControlToValidate="TextBoxTaskInitialDuration"
                                                        Display="None" ValidationGroup="AddTaskValidationGroup" ClientValidationFunction="CustomValidatorTaskInitialDuration_ServerValidate" />
    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
     
    <script type="text/javascript" language="javascript" >
     
    function CustomValidatorTaskInitialDuration_ServerValidate(source,args)
    {
     if (document.getElementById('CheckBoxTaskPeriodTrue').checked && args.Value.length==0)
            {
                // les messages erreurs de CustomValidator1 seront affichés
                args.IsValid = false;
            }
            else
            {
                args.IsValid = true;
            }
    }
     
    </script>
    voila mon code...je ne comprend pas pourquoi ca ne marche pas..

  7. #7
    Membre expérimenté Avatar de bizet
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2005
    Messages
    717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 717
    Points : 1 338
    Points
    1 338
    Par défaut
    je ferais pas comme ca :

    j'ajouterai mes trois textbox et leur requireValidation en visible=false.

    Un evenement sur le checkbox qui s'il est choisit passe tout en visible (les textbox apparaissent et le controle de validation devient actif)

    Tout passe par le code behind et pas besoin de coder soit meme le javascript.

    precision : ton checkbox doit etre en autosubmit pour faire un petit aller retour vers le serveur qui est l'inconvénient de ma solution.

  8. #8
    Membre averti
    Homme Profil pro
    Consultant SharePoint
    Inscrit en
    Mars 2006
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant SharePoint
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2006
    Messages : 270
    Points : 308
    Points
    308
    Par défaut
    ben ne fait le pb, c'est que toutes mes textbox peuvent etre remplies si on le souhaite... elles ne sont obligatoires (pour les 3) que si on a coché la checkbox.
    avec le enableScriptClient ca marche pas... :s

  9. #9
    Membre expérimenté Avatar de bizet
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2005
    Messages
    717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 717
    Points : 1 338
    Points
    1 338
    Par défaut
    alors tu fais un evenement sur ta checkbox qui permet de passer juste tes requireValidation à Visible.

    Le fait de les passer a visible permet leur activation.

    Donc si ta checkbox n'est pas cochée, tes texbox peuvent ou non etre remplies si ta checkbox est cochée alors le require est activée.

  10. #10
    Membre averti
    Homme Profil pro
    Consultant SharePoint
    Inscrit en
    Mars 2006
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant SharePoint
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2006
    Messages : 270
    Points : 308
    Points
    308
    Par défaut
    oué mé le pb.....je dois mettre tout ca dans un update panel?

  11. #11
    Membre averti
    Homme Profil pro
    Consultant SharePoint
    Inscrit en
    Mars 2006
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant SharePoint
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2006
    Messages : 270
    Points : 308
    Points
    308
    Par défaut
    oui et puis pour passer dans la méthode lancée au clic de la checkbox, il faut faire un postback et je ne peux pas en faire car cela ferme la popup dans laquelle je me trouve...

  12. #12
    Membre averti
    Homme Profil pro
    Consultant SharePoint
    Inscrit en
    Mars 2006
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant SharePoint
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2006
    Messages : 270
    Points : 308
    Points
    308
    Par défaut
    c'est bon j'ai trouvé d'où venait le problème, en fait les validators ne marchent pas dans les updatePanels...
    Il y a un patch qui existe chez microsoft...
    voila un blog qui en parle :

    http://weblogs.asp.net/lkempe/archiv...alidators.aspx

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 25/03/2011, 18h29
  2. Activer une checkbox a partir d'une autre checkbox
    Par Joe Le Mort dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/05/2007, 16h39
  3. Réponses: 1
    Dernier message: 19/11/2006, 23h58
  4. valider une checkbox
    Par SaeZ dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 02/06/2006, 14h00
  5. Activation d'un bouton en fonction d'une checkbox
    Par zamoto dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/05/2006, 14h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo