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

JavaScript Discussion :

Validation d'un champ contenu dans un tableau


Sujet :

JavaScript

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2008
    Messages : 105
    Points : 109
    Points
    109
    Par défaut Validation d'un champ contenu dans un tableau
    Bonjour à tous,
    J'ai une page php qui me renvoie un tableau, avec plusieurs colonnes dont une contenant un champs prix[], pour permettre la modification de cette valeur.
    Je voudrais mettre en place une validation js pour ce champ quand on le quitte.
    Dès lors, comment peut-on déterminer Le champ sur lequel on se trouve pour faire la vérification?

    Alpha.

  2. #2
    Membre expérimenté
    Avatar de gwyohm
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2007
    Messages
    925
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 925
    Points : 1 333
    Points
    1 333
    Par défaut
    Bonjour,
    passe le champ en paramètre:
    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
     
    var verif = function(field) {
      var val = field.value;
      if(isNaN(val )) {
        alert("le prix est invalide") ;
        field.focus();
      } else if(parseInt(val ) < 0) {
        alert("le prix ne peut pas être < à 0") ;
        field.focus();
      }
    }
    //...
    <input type="text" name="prix" onblur="verif(this)"/>
    <input type="text" name="prix" onblur="verif(this)"/>
    <input type="text" name="prix" onblur="verif(this)"/>

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2008
    Messages : 105
    Points : 109
    Points
    109
    Par défaut
    Merci pour cette réponse rapide
    Pour mettre la ligne du tableau correspondant dans une autre couleur, même question, comment fait-on pour trouver la bonne ligne sous js?

    Merci.
    Alpha.

  4. #4
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 915
    Points
    79 915
    Par défaut
    Bonjour,

    Par exemple vous pourriez reparcourir le tableau jusqu'à trouver le champ. A ce moment-là vous connaissez l'indice de la ligne.
    Ou bien lors de la création du tableau, vous renseignez l'indice de la ligne dans le champ (un attribut ? une partie d'id ? ... ?) et si vous avez le champ, vous avez d'office sa ligne (pour peu que le tableau ne bouge plus en nombre de lignes).
    Voire encore prendre le deuxième parent du champ car le premier parent est la cellule, le second est la ligne (sauf si le champ est dans un troisième parent, mais bref, c'est le même principe).

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2008
    Messages : 105
    Points : 109
    Points
    109
    Par défaut
    En fait, un de mes soucis, c'est que j'ajoute de maniere dynamique, les nouveaux enregistements en tête du tableau donc, la position de la ligne est susceptible de changer à chaque enreg. Peut-on donner un id à ligne du style 'row.id ="blabla"'?
    Bien à vous.
    alpha.

  6. #6
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 915
    Points
    79 915
    Par défaut
    Un id peut-être pas. Un attribut, oui.
    Et la version de récupérer le parent ?

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2008
    Messages : 105
    Points : 109
    Points
    109
    Par défaut
    Récuperer les parents du champs ou (plutot ici, les grand-parents, c-a-d la ligne)c'est une bonne idée, mais comment fait-on?Je suppose que c'est une fonction dom?
    Merci.
    Alpha.

  8. #8
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 915
    Points
    79 915
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var parent = enfant.parentNode;
    Je vous laisse chercher le grand-parent avec cette information.

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2008
    Messages : 105
    Points : 109
    Points
    109
    Par défaut
    youpi ça marche ....
    J'ai réussi à récupérer le grand-père
    Je voudrais récupérer une valeur qui se trouve dans une autre cellule sur la même ligne, contenue dans un champ caché, mais je m'emmêle un peu les pinceaux avec les child?
    Merci pour votre aide.
    Alpha.

  10. #10
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 915
    Points
    79 915
    Par défaut
    Et bien si l'élément caché est réellement au même niveau que le premier input, vous pouvez retourner chez le père (<td>) et ensuite faire un getElementById() si vous connaissez l'id. Mais je ne pense pas que vous le connaissiez. Vous pouvez jouer (dangereux) avec la position des champs. Si le hidden est le premier champ, ou bien si c'est le second, etc. Vous pouvez parcourir les enfants du père et vous arrêter au ième.
    Si par contre, c'est votre seul champ hidden, vous allez au père, vous parcourez ses enfants et vous testez le type:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if(enfant.type == "hidden")
        //Youpppiiiiie dansons la cariiooooocaaaaa

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2008
    Messages : 105
    Points : 109
    Points
    109
    Par défaut
    cela a bien fonctionné .....
    Je me suis dit , "la colonne 7 contient le champ dont je veux récupérer la valeur et bingo, le child [6] contenait le champ en question", sous internet explorer, mais sous firefox, j'ai du aller jusqu'au child[15] car apparemment, il a trouvé 23 elements ds ma ligne , donc plus de 10 colonnes.........., grrr la compatibilité entre navigateurs..... !!! ))

    Un grand Merci pour toutes ces infos , Vermine, elles m'ont vraiment aidé ...

    Alpha.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 17/08/2012, 17h10
  2. Sélection champ contenu dans variable
    Par xa_plage dans le forum Requêtes
    Réponses: 2
    Dernier message: 08/06/2006, 16h34
  3. Réponses: 2
    Dernier message: 30/04/2006, 20h22
  4. Réponses: 15
    Dernier message: 02/12/2005, 17h12
  5. Ajout de d'une ligne et d'un champ input dans un tableau
    Par zetta dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 15/11/2005, 10h45

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