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 :

javascript dans un Usercontrol ?


Sujet :

ASP.NET

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2008
    Messages : 27
    Par défaut javascript dans un Usercontrol ?
    Bonjour,

    j'ai un usercontrol nomé : ClientFavoris.ascx , qui contient un treeview avec des checkbox a l'interieur, cet usercontrol est utilisé ds une page d'accueil nomée : accueil.aspx .

    ce ke je veux faire c'est de controler ce treeview avec de javascript , par exemple si je couche un noeud pere ==> tous les noeuds fils doivent etre couchés et vis versa...!!

    je ne sait pas ou exactement il faut declarer ma fonction javascript et comment attribuer cette fonction a mon treeview ??

    et merci pour votre aide

    cordialement

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Il me semble que le treeview est complètement géré côté serveur, donc si un noeud est replié, ses noeuds enfants ne sont même pas présents dans la page envoyée au client. Donc tu ne peux pas les manipuler côté client en javascript...

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2008
    Messages : 27
    Par défaut
    merci pour cette precision, par contre moi j'utilise un treeeview avec la propriété : ShowCheckBox="True" voila ce ke j'utilise exactement :

    noeud pere:
    <asp:TreeNode Checked="True" ShowCheckBox="True" Text="clients" Value="client">

    noeud fils :
    <asp:TreeNode Checked="True" ShowCheckBox="True" Text="Adresse" Value="Client_Mail"></asp:TreeNode>

    </asp:TreeView>

    dc chaque est considéré comme un checkbox a la fois, et on peut coucher et decoucher les noeuds sans les repliers !!!

    moi je ne veux pas les repliers , ce que je veux c'est de les laisser ouvert , et jouer ke sur les checkbox !!

    est ce ke ts ca est possible ??
    et merci encore

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Ah ok, j'avais pas compris ce que tu voulais dire par "coucher"... le mot correct est "cocher"
    Mais bon, je suis pas sûr que tu puisses le faire en javascript (ou en tous cas pas facilement), parce que tu ne connais pas l'identifiant de la checkbox générée...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2008
    Messages : 27
    Par défaut
    looool, dslé pr l'erreur

    il existe un evenement TreeNodeCheckChanged associé au Treeview, mais je ne sait pas est ce ke c'est possible d'associer cet evenement à une fonction javascript coté client !!!

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par soulay Voir le message
    looool, dslé pr l'erreur

    il existe un evenement TreeNodeCheckChanged associé au Treeview, mais je ne sait pas est ce ke c'est possible d'associer cet evenement à une fonction javascript coté client !!!
    Non, c'est un évènement serveur, non visible par javascript

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2008
    Messages : 27
    Par défaut
    à votre avis la meilleure solution c'est de le gerer coté serveur alors !!

    et si c'est le cas , je vais utiliser la meme methode citée ?

  8. #8
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    oui

  9. #9
    Expert confirmé
    Avatar de Ditch
    Inscrit en
    Mars 2003
    Messages
    4 160
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mars 2003
    Messages : 4 160
    Par défaut
    ASP.NET AJAX (avec un UpdateControl) pourrait t'aider à résoudre ton problème. Y as-tu déjà jeté un oeil?

  10. #10
    CUCARACHA
    Invité(e)
    Par défaut Autre solution
    Salut,

    Tout contrôle affiché côté client peut être géré en javascript. Le tout est d'être capable de connaître son clientId.

    Pour se faire tu peux créer un javascript du style :

    checkSon(currentNodeId) {
    var oFatherNode = window.document.getElementById(currentNodeId);
    //rechercher tous les fils dans la collection des nodes dont le père est currentNode (là il faut un peu maîtriser le DOM quand même)
    //Pour chcune d'elle, cocher la case
    window.document.form1.submit(); //Vérifier le nom du formulaire
    }

    ensuite, lorsque tu initialises les branches de l'abre (côté serveur) il faut ajouter, pour chaque node, onClientClic="return checkSon('" + currentNode.clientId + "');

    ++

    Laurent

    P.S. Utilises la IE7 Developper Toolbar pour inspecter les ID de ton arbre, ça te facilitera la tâche.

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2008
    Messages : 27
    Par défaut
    salut,

    merci pour ton aide , je vais essayer tous ca et je te dirai ce ke ca va donner!!

    cordialement

  12. #12
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2008
    Messages : 27
    Par défaut
    j'ai essayer de fonctionner ton script, mais j'arrive tjrs pas à reussir à ajouter, pour chaque node, onClientClic="return checkSon('" + currentNode.clientId + "');


    je ne sait pas exactement ou il faut les rajouter dans mon UserControl ??

    et merci encore pour votre aide

  13. #13
    CUCARACHA
    Invité(e)
    Par défaut Quelle version de Visual Studio ?
    Salut,

    Merci de m'indiquer la version de Visual Studio et du framework que tu utilises.

    ++

    Laurent

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2008
    Messages : 27
    Par défaut
    j'utilise visual studio 2005 et le framework 2.0 et je suis entrain de realiser un moduke de reporting en (ASP.NET,C#)

    et merci

  15. #15
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2008
    Messages : 27
    Par défaut
    bonjour,

    j'attend tjrs une reponse a mon probleme, disant que pour le moment je fait autres choses , mais je ss tjrs interessé de savoir comment gerer des checkbox ds un treeview avec de javascript.

    et merci a tous !!

  16. #16
    Membre éclairé

    Homme Profil pro
    Architecte technique
    Inscrit en
    Décembre 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2006
    Messages : 38
    Par défaut la solution
    Bonjour,

    voici la soution a ton problème : copier coller le code JavaScripte

    Code Javascript : 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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    function client_OnTreeNodeChecked()
        {
            var obj = window.event.srcElement;
            var treeNodeFound = false;
            var checkedState;        
            if (obj.tagName == "INPUT" && obj.type == "checkbox") {
            var treeNode = obj;
            checkedState = treeNode.checked;
            do
            {
                obj = obj.parentElement;
            } while (obj.tagName != "TABLE")
                var parentTreeLevel = obj.rows[0].cells.length;
                var parentTreeNode = obj.rows[0].cells[0];
                var tables = obj.parentElement.getElementsByTagName("TABLE");
                var numTables = tables.length
                if (numTables >= 1)
                {
                    for (i=0; i < numTables; i++)
                {
                if (tables[i] == obj)
                {
                    treeNodeFound = true;
                    i++;
                    if (i == numTables)
                    {
     
                        return;
                    }
                 }
     
                if (treeNodeFound == true)
                {
                    var childTreeLevel = tables[i].rows[0].cells.length;
                    if (childTreeLevel > parentTreeLevel)
                    {
                        var cell = tables[i].rows[0].cells[childTreeLevel - 1];
                        var inputs = cell.getElementsByTagName("INPUT");
                        inputs[0].checked = checkedState;
                    }
                    else
                    {
                        return;
                    }
                 }
     
          }
          }
          }
          }


    Bon travail.

  17. #17
    Membre éclairé

    Homme Profil pro
    Architecte technique
    Inscrit en
    Décembre 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2006
    Messages : 38
    Par défaut
    j'ai oblié de te dire que tu l'associé avec l'évenement Client onclick

  18. #18
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2008
    Messages : 27
    Par défaut
    salut,
    ok merci ,je vais tester ts ça, et je te dirai si ts marche bien.

    et merci encore

  19. #19
    Membre éclairé

    Homme Profil pro
    Architecte technique
    Inscrit en
    Décembre 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2006
    Messages : 38
    Par défaut
    alors tu l'as implémenté ?

Discussions similaires

  1. Réponses: 1
    Dernier message: 25/11/2009, 20h27
  2. integration varaiables javascript dans du HTML
    Par developpeur_mehdi dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 10/11/2004, 14h54
  3. Javascript dans un formulaire
    Par MagicManu dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 26/10/2004, 11h25
  4. Réponses: 2
    Dernier message: 08/08/2003, 17h30
  5. [web] insertion javascript dans du perl
    Par laluna dans le forum Web
    Réponses: 3
    Dernier message: 28/07/2003, 09h50

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