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 :

Onglets, id champs formulaire identiques


Sujet :

JavaScript

  1. #1
    Membre chevronné Avatar de billynirvana
    Homme Profil pro
    Architecte technique
    Inscrit en
    Décembre 2004
    Messages
    472
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 472
    Par défaut Onglets, id champs formulaire identiques
    Bonjour,

    Nous allons mettre en production une application censée afficher plusieurs formulaires sur une même page HTML, un par onglet.

    Ces formulaires sont générés par un module dédié et peut contenir du code javascript identique (tri, initialisations, formatage, etc).

    - Si il y a un seul onglet, donc un seul formulaire, tout se déroule bien.
    - Si il y a plusieurs onglets et que les formulaires sont tous différents, tout se déroule bien aussi.
    - Si 2 formulaires identiques sont affichés, alors seul le premier réagit bien, l'autre a des effets indésirables dus à l'absence de traitement javascript.

    Je me suis rendu compte que c'est à cause des ids qui sont identiques dans les 2 formulaires.

    Connaissez-vous un moyen de contournement? Est-il possible d'exécuter du javascript que sur un noeud et non sur tout le document?

    Merci pour vos réponses.

    Kurt

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    un id devant être unique sur une page ...
    il faut identifier de façon unique chaque form
    ou alors utiliser le name et passer par la collection getElementsByName
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Bonjour,
    Citation Envoyé par billynirvana Voir le message
    Ces formulaires sont générés par un module dédié et peut contenir du code javascript identique (tri, initialisations, formatage, etc).
    pour que chaque id soit unique dans la page, ce module semble tout indiqué pour géré un compteur à ajouter à l'id actuel. Chaque form héritera de la même valeur de compteur et les modif dans les fonctions existantes pour prendre en charge ce compteur devrait être minimes (par rapport au passage de la logique ID à la logique name, par exemple) ...

    A+

  4. #4
    Membre chevronné Avatar de billynirvana
    Homme Profil pro
    Architecte technique
    Inscrit en
    Décembre 2004
    Messages
    472
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 472
    Par défaut
    Oui, je suis en train de revoir une partie de ce module pour suffixer mes ids par un timestamp (calculé au début de la génération) afin de régler le problème. Je ne vois que cette solution.

    Edit: Je viens de tester avec des jsp:include, et il n'est pas nécessaire de mettre le timestamp (= ca marche ). Cependant, je vais faire la modif pour pouvoir réutiliser ces modules sur d'autres projets qui n'utilisent pas de moteurs de jsp.

  5. #5
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    revoir une partie de ce module pour suffixer mes ids par un timestamp
    La solution de E.Bzz était trop simple ???
    Là tu te compliques la vie pour rien, l'intérêt d'un compteur est de pouvoir connaitre l'id et récupérer l'élément, tu ne pourras pas avec un timestamp !
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  6. #6
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par Bovino Voir le message
    La solution de E.Bzz était trop simple ???
    Là tu te compliques la vie pour rien, l'intérêt d'un compteur est de pouvoir connaitre l'id et récupérer l'élément, tu ne pourras pas avec un timestamp !
    + 1000

    Encore faut-il qu'au-delà de la facilité de mise en place, la solution soit utilisable (et que l'appli reste évolutive) ...

    A+

  7. #7
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par billynirvana Voir le message
    Edit: Je viens de tester avec des jsp:include, et il n'est pas nécessaire de mettre le timestamp (= ca marche ).
    Attention aux joies prématurées

  8. #8
    Membre chevronné Avatar de billynirvana
    Homme Profil pro
    Architecte technique
    Inscrit en
    Décembre 2004
    Messages
    472
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 472
    Par défaut
    Oui, je me complique pour pas grand chose, un compteur suffira amplement!

    Je vous dirai d'ici demain si j'ai obtenu des résultats satisfaisants, je suis très optimiste!

    Kurt

Discussions similaires

  1. fusionner 2 tables dont les champs sont identiques mais.....
    Par NoobX dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 27/10/2005, 16h12
  2. Réponses: 1
    Dernier message: 29/09/2005, 12h05
  3. Modifier la position d'un champs formulaire
    Par gg14bis dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 22/09/2005, 08h57
  4. Champs tous identiques ?
    Par jean-do dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 01/06/2004, 14h22

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