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 :

[POO] coche de 2 colonnes de checkbox dans un datagrid


Sujet :

JavaScript

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 343
    Par défaut [POO] coche de 2 colonnes de checkbox dans un datagrid
    Bonjour,

    Je dispose d'une datagrid dont les 2 dernières colonnes sont des checkbox:

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    <asp:DataGrid id="MachinesGrid" runat="server" AutoGenerateColumns="false" AllowSorting="True" >
    	<Columns>
    		<asp:BoundColumn DataField="MAC_NAME" SortExpression="MAC_NAME" HeaderText="Macine"></asp:BoundColumn>
    		<asp:TemplateColumn>
    			<HeaderTemplate>
    				<p>
    					<asp:CheckBox ID="ImportAllCheckBox" onClick="selectAll(this);" runat="server"></asp:CheckBox>
    				</p>
    			</HeaderTemplate>
    			<ItemTemplate>
    				<p>
    				    <asp:CheckBox ID="ImportCheckBox" runat="server"></asp:CheckBox>
    				</p>
    			</ItemTemplate>
    		</asp:TemplateColumn>
    		<asp:TemplateColumn>
    			<HeaderTemplate>
    				<p>
    					<asp:CheckBox ID="NoCopyAllCheckBox" onClick="selectAll(this);" runat="server"></asp:CheckBox>
    				</p>
    			</HeaderTemplate>
    			<ItemTemplate>
    				<p>
    					<asp:CheckBox ID="NoCopyCheckBox" runat="server"></asp:CheckBox>
    				</p>
    			</ItemTemplate>
    		</asp:TemplateColumn>
    	</Columns>
    </asp:DataGrid>
    Je veux cocher ou décocher toutes les checkbox de la colonne quand je coche ou décoche la checkbox du header de la colonne en question...

    Actuellement, les checkbox des 2 colonnes se cochent ou se décochent quand je coche ou décoche une des 2 checkbox header...

    Y'a t'il un moyen de relier chaque checkbox d'une même colonne à sa checkbox header?

    A tout hasard, voici ma fonction javascript qui gère la coche ou la décoche des checkbox de mon datagrid:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    function selectAll(checkBox)
    {
        var i;
        for (i=0; i < document.forms[0].elements.length; i++) 
        {
            if ((document.forms[0].elements[i].type == 'checkbox') && 
            (document.forms[0].elements[i].name.indexOf('MachinesGrid') > -1)) 
            {
                document.forms[0].elements[i].checked = checkBox.checked;
            }
        }
    return true;
    }
    Merci d'avance!

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    397
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 397
    Par défaut
    Avoir des name differents pour tes 2 colonnes de checkbox et pouvoir les differencier comme ca.

    Par exemple name=col1 pour la premiere colonne
    et name=col2 pour la seconde...

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 343
    Par défaut
    Citation Envoyé par tusssss Voir le message
    Avoir des name differents pour tes 2 colonnes de checkbox et pouvoir les differencier comme ca.

    Par exemple name=col1 pour la premiere colonne
    et name=col2 pour la seconde...
    J'imagine que ce name serait une propriété de la balise <asp:TemplateColumn>?
    Comment mettre cette propriété? Id="nomColonne" par exemple?
    Et surtout comment l'utiliser dans mon code javascript pour différencier ces 2 colonnes?

    Merci pour ta réponse!

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    397
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 397
    Par défaut
    Malheureusement, ou heureusement, un id doit absolument être unique puisqu'il sert à identifier un objet.

    Par contre il faut passer par les names, mais en ASP, je n'y connais malheureusement rien du tout.

    Est-il possible d'écrire une propriété name un peu comme ont été écrits les ID? Si oui, après le reste sera facile.

Discussions similaires

  1. Remplir une colonne checkBox dans une datagrid
    Par ouinih dans le forum Développement Windows
    Réponses: 3
    Dernier message: 26/11/2010, 21h25
  2. Réponses: 5
    Dernier message: 30/03/2007, 20h54
  3. Réponses: 2
    Dernier message: 19/05/2006, 18h01
  4. [VB.NET] Insérer une colonne de CheckBox dans un DataGrid
    Par Manue.35 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 22/05/2003, 11h44

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