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

AngularJS Discussion :

Accéder à un formulaire par son nom


Sujet :

AngularJS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur/Modérateur
    Avatar de beekeep
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 2 005
    Par défaut Accéder à un formulaire par son nom
    Bonjour,

    j'utilise la validation des formulaires pour afficher un message si des erreurs sont présentes dans le formulaire:

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <p ng-show="!myForm.$valid && myForm.$submitted">Données invalides!</p>

    J'aimerai faire la même chose mais avec le nom du formulaire ("myform") qui n'est plus en dur mais dans une variable (par exemple formName).

    Est-ce que quelqu'un a la solution?
    Merci.

  2. #2
    Membre émérite Avatar de slim
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2002
    Messages
    938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Décembre 2002
    Messages : 938
    Par défaut
    Salut!

    Je pense que tu peux utiliser une variable dans le nom du formulaire tout simplement.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form name="{{myCtrl.formName}}"
    Faites une recherche sur le forum et/ou sur internet et lisez la doc officielle avant de poser une question svp.
    et n'oubliez pas de lire les FAQ !
    FAQ Java et les cours et tutoriels Java
    Doc JAVA officielle
    AngularJS 1.x
    Angular 2

    Do it simple... and RTFM !

  3. #3
    Rédacteur/Modérateur
    Avatar de beekeep
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 2 005
    Par défaut
    Salut,

    oui voila. La question est comment reproduire mon premier code en utilisant cette variable.

  4. #4
    Membre émérite Avatar de slim
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2002
    Messages
    938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Décembre 2002
    Messages : 938
    Par défaut
    Je ne l'ai jamais fais mais je pense que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <p ng-show="!myCtrl.formName.$valid && myCtrl.formName.$submitted">Données invalides!</p>
    devrait fonctionner. Non ?
    D'ailleurs je ne comprends pas le besoin. Le nom d'un formulaire doit être unique et donc tu ne devrais pas avoir de variable mais un nom tout simplement.
    Autre chose, angular-messages est meilleur pour la gestion des messages d'erreur.
    Une dernière chose $invalid est mieux que !$valid
    Faites une recherche sur le forum et/ou sur internet et lisez la doc officielle avant de poser une question svp.
    et n'oubliez pas de lire les FAQ !
    FAQ Java et les cours et tutoriels Java
    Doc JAVA officielle
    AngularJS 1.x
    Angular 2

    Do it simple... and RTFM !

  5. #5
    Rédacteur/Modérateur
    Avatar de beekeep
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 2 005
    Par défaut
    Bah non la variable est une string, ce n'est pas l'objet formulaire Angular.
    C'était une exemple évidement je n'utilise pas le code tel quel.

    Finalement j'utilise une directive pour faire ce dont j'ai besoin car je suis pas dans le même scope que le formulaire.

  6. #6
    Membre émérite Avatar de slim
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2002
    Messages
    938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Décembre 2002
    Messages : 938
    Par défaut
    "La variable est une string" Euh... puisque tu déclare une variable, si tu fais un ng-show dessus, cela ne devrait pas poser de problème.
    Et ce n'est pas ce qui me dérange. Ce qui me gêne, c'est que tu veux faire ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form name="{{maVar}}">
    Normalement, et d'après la doc, tu devrais pouvoir faire cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <form name="myCtrl.myForm">
        ...
        <input name="myInput">
        <div ng-messages="myCtrl.myForm.myInput.$invalid" style="color:red" role="alert">
            <div ng-message="required" translate="global.messages.validate.input-required"></div>
        </div>
    </form
    Sinon, dans ton controleur, tu peux déclarer une variable et lui assigner le nom du formulaire ou une de ses propriétés :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    myCtrl.myVar = myCtrl.myForm.$invalid;
    et tu fais un ng-if ou ng-show sur la variable myCtrl.myVar

    Mais tu m'excusera c'est un peu strange.
    Faites une recherche sur le forum et/ou sur internet et lisez la doc officielle avant de poser une question svp.
    et n'oubliez pas de lire les FAQ !
    FAQ Java et les cours et tutoriels Java
    Doc JAVA officielle
    AngularJS 1.x
    Angular 2

    Do it simple... and RTFM !

  7. #7
    Rédacteur/Modérateur
    Avatar de beekeep
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 2 005
    Par défaut
    C'est le contraire en fait j'ai défini un formulaire avec un nom dans le contrôleur j'ai une variable avec ce nom
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $scope.myForm = 'testForm';
    et je voulais utiliser l'objet formulaire angular (contenant $valid) à partir de la variable et non du nom en dur.

    mais bon
    Citation Envoyé par beekeep Voir le message
    Finalement j'utilise une directive pour faire ce dont j'ai besoin car je suis pas dans le même scope que le formulaire.

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

Discussions similaires

  1. Accéder à une variable par son nom
    Par uriotcea dans le forum C++
    Réponses: 16
    Dernier message: 23/01/2012, 20h55
  2. [C#] Comment accéder à un contrôle par son nom ?
    Par km3l3on dans le forum Windows Forms
    Réponses: 4
    Dernier message: 01/06/2010, 19h34
  3. [PHP 5.1] Accéder à une variable par son nom
    Par Papy214 dans le forum Langage
    Réponses: 6
    Dernier message: 07/12/2009, 15h21
  4. Réponses: 3
    Dernier message: 25/02/2007, 18h49
  5. Accéder à une propriété par son nom
    Par Neilos dans le forum C++Builder
    Réponses: 5
    Dernier message: 22/09/2005, 21h34

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