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 :

optimiser un cochage/decochage automatique


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair�
    Inscrit en
    Juin 2006
    Messages
    431
    D�tails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 431
    Par d�faut optimiser un cochage/decochage automatique
    Salut, je suis en train de coder une page en asp utilisant un formulaire compos� de checkboxes. Je voudrais pouvoir s�lectionner certain sous-checkboxes en meme temps que l'utilisateur coche un autre checkboxe. Je m'explique par un exemple:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    type de client:
         type a
                           client 1
                           client 2
                           client 3
         type b
                           client 4
                           client 5
                           client 6
         type c
                           client 7
                           client 8
                           client 9
    Quand l'utilisateur s�lectionne a, les clients 1,2,3 sont s�lectionn�s, mais pas les autres.
    J'ai cod� la fonction javascript suivante, qui marche:
    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
    function selection_type(type)
    	{
    		var taille = type.length;
    		var i = 0;
    		var valide = 0,tmp;
    		while (i < form2.length)
    			{
    				if (document.form2.elements[i].name.substring(0,taille) == type)
    					{
    						valide = 1;
    						mesbox = document.form2.elements[i];
    						mesbox.checked = !mesbox.checked;
    					}
    				else
    					{
    						tmp = "type_" + type
    						if (document.form2.elements[i].name.substring(0,4) != "TXT_")
    							{
    								if ((document.form2.elements[i].name != tmp) && (valide == 1))
    									{
    										i = form2.length - 1;
    									}
    							}
    					}
    				i = i +1;
    			}
    	}
    Mon souci est que j'ai plus de 1800 checkboxes, donc ca entraine un traitement tr�s long, en particulier si je prend un des derniers types (exemple si je s�lectionne type c je suis oblig� de tester les types a et b. Est-ce qu'il serait possible d'optimiser ca, en mettant un syt�me de marquage par exemple avec un goto ou �quivalent?

  2. #2
    Expert confirm�
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Ao�t 2003
    Messages
    3 684
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activit� : danseur

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 3 684
    Par d�faut
    salut

    je ne comprends pas vraiment ce que tu veux faire;

    tu as un aper�u du html?

  3. #3
    Membre �clair�
    Inscrit en
    Juin 2006
    Messages
    431
    D�tails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 431
    Par d�faut
    je cherche � automatiser la cr�ation d'une liste de diffusion en asp. Je dispose d'une liste de clients, ayant chacun un ou plusieurs mails. ces clients sont subdivis�s en cat�gories (ex: client direct, fournisseur etc...). J'affiche tous les clients class�s par cat�gories, avec une checkbox pour chaque cat�gorie, et je veux pouvoir s�lectionner/d�selectionner les clients et les mails correspondants aux types selectionn�s/d�selectionn�s. La fonction que j'ai cod�e marche, mais comme ca me fait traiter plus de 1800 mails (sous formes de checkboxes) quand je parcours mon formulaire, le temps de traitement est tr�s long (environ 2 min pour tout s�lectionner).
    Niveau html, ca donne ca grosso modo, et pour un client:
    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
    <tr bgcolor="#FFFFCC" align="center">
    	<td align="center">
    		<table width="800" border="0" cellpadding="1" cellspacing="1">
    			<tr align="left">
    				<td valign="top" width="300">
    					<input type="checkbox" name="Autre_665" value="665"><strong><b>client</b></strong>
    				</td>
    				<td align="left" width="150">
    					<strong><b>Email 1:</b></strong><br><strong><b>Email 2:</b></strong><br>
    				</td>
    				<td>
    					<input type="checkbox" name="TXT_665_email_Autre" value="mail_client"><b>mail_client</b><br>
    					<input type="checkbox" name="TXT_665_emailglobal_0Autre" value="mail_client"><b>mail_client</b><br>
    				</td>
    			</tr>
    		</table>
    	</td>
    </tr>

  4. #4
    Expert confirm�
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Ao�t 2003
    Messages
    3 684
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activit� : danseur

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 3 684
    Par d�faut
    c'est encore un peu vague pour mes 2 neurones;

    tu parles de 1800 mails mais quel rapport avec le cochage d�cochage?
    j'imagine que tu ne veux pas tout cocher / d�cocher en m�me temps? ou alors si? ton probl�me serait donc comment cocher / d�cocher un grand nombre de cases en m�me temps en �vitant une boucle tr�s lourde?


    sinon, tu pourrais mettre un peu plus de html, juste pour visualiser une partie de l'arborescence du form?;

  5. #5
    Membre �clair�
    Inscrit en
    Juin 2006
    Messages
    431
    D�tails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 431
    Par d�faut
    Citation Envoy� par javatwister
    tu parles de 1800 mails mais quel rapport avec le cochage d�cochage?
    j'imagine que tu ne veux pas tout cocher / d�cocher en m�me temps? ou alors si? ton probl�me serait donc comment cocher / d�cocher un grand nombre de cases en m�me temps en �vitant une boucle tr�s lourde?
    C'est exactement ca. Je veux pouvoir cocher/d�cocher toutes les cases qui correspondent � un certain type de client et j'aimerais �viter si possible de devoir v�rifier les cases correspondant � un type de client diff�rent.

    niveau html et pour faire court, on obtient quelque chose dans ce gout la une fois execut�:

    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    <tr bgcolor="#99FF99" align="center">
    	<td>
    		Type De Clients : &nbsp;&nbsp;
    		<input type="checkbox" onclick="selection_type('fournisseur')" name="type_fournisseur" value="fournisseur">Fournisseur
    	</td>
    </tr>
    <tr bgcolor="#FFFFCC" align="center">
    	<td align="center">
    		<table width="800" border="0" cellpadding="1" cellspacing="1">
    			<tr align="left">
    				<td valign="top" width="300">
    					<input type="checkbox" name="fournisseur_id_client1" value="id_client1"><strong><b>Client 1</b></strong>
    				</td>
    				<td align="left" width="150">
    				</td>
    				<td>
    					<i>Pas d'Email valide disponible</i><br>
    				</td>
    			</tr>
    		</table>
    	</td>
    </tr>
    <tr bgcolor="#FFFFCC" align="center">
    	<td align="center">
    		<table width="800" border="0" cellpadding="1" cellspacing="1">
    			<tr align="left">
    				<td valign="top" width="300">
    					<input type="checkbox" name="fournisseur_id_client2" value="id_client2"><strong><b>client 2</b></strong>
    				</td>
    				<td align="left" width="150">
    					<strong><b>Email 1:</b></strong><br><strong><b>Email 2:</b></strong><br>
    				</td>
    				<td>
    					<input type="checkbox" name="TXT_id_client2_email_fournisseur" value="mail_client"><b>mail_client</b><br>
    					<input type="checkbox" name="TXT_id_client2_emailglobal_0fournisseur" value="mail_client"><b>mail_client</b><br>
    				</td>
    			</tr>
    		</table>
    	</td>
    </tr>
    L'id est num�rique. Si aucun email valide n'est disponible, il n'y a pas de checkbox, a part celle du client.
    Je pourrais te mettre mon code asp, mais je ne suis pas sur que ca t'aiderait dans la mesure ou je fais beaucoup de tests intermediaires pour v�rifier certains param�tres.

  6. #6
    Expert confirm�
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Ao�t 2003
    Messages
    3 684
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activit� : danseur

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 3 684
    Par d�faut
    bon, un tout ptit script, dis-moi si �a t'inspire:

    http://javatwist.imingo.net/coch.htm

    peu importe le nommage (num�rique, al�atoire, nominal), mais il faut simplement que chaque checkbox de niveau "type" ou "client" ait le m�me name, ce qui est assez normal;

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Cochage automatique liste de choix
    Par sleeg dans le forum ASP
    R�ponses: 2
    Dernier message: 31/05/2012, 07h37
  2. Cochage automatique de CheckBox
    Par audrey1912 dans le forum ASP
    R�ponses: 9
    Dernier message: 31/05/2011, 10h31
  3. [CSS] Optimisation automatique
    Par Rolf-IV dans le forum Algorithmes et structures de donn�es
    R�ponses: 3
    Dernier message: 10/11/2009, 12h42
  4. Probleme de cochage automatique de checkbox
    Par nuFox dans le forum IHM
    R�ponses: 3
    Dernier message: 17/12/2008, 13h29
  5. Optimisation automatique de boucles
    Par progfou dans le forum Algorithmes et structures de donn�es
    R�ponses: 5
    Dernier message: 01/08/2007, 11h36

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