begin process at 2012 05 29 04:21:48
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Javascript

 > 

Archives

 > 

AU SECOURS !!!

 > 

Comment Griser pleins de controles (checkbox) en une boucle ???


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Comment Griser pleins de controles (checkbox) en une boucle ???

vendredi 28 mai 2004 à 16:20:29 | Comment Griser pleins de controles (checkbox) en une boucle ???

SnowAngeL

je fais une fonction avec une boucle pour griser des controles d'un formulaire, c'est utile et moins long à charger quand on a 50 controles à griser... et ca m'évite de taper 50 fois la meme ligne:

document.forms["ma_form"].nom.disabled=true ;
document.forms["ma_form"].prenom.disabled=true ;

...

Donc je fourni dans la variable Texte au debut de mon script tous les noms de controle que je souhaite griser


function griser() {
Texte = new Array("nom","prenom","age");
i = 0 ;
while ( Texte[i] )
{
document.forms["ma_form"]. + Texte[i] + .disabled=true ;
i = i + 1;
}
}


Seulement le
document.forms["ma_form"]. + Texte[i] + .disabled=true ;
ne passe pas et j'ai bien tenter des " document.write(document.forms[\"ma_form\"]. + Texte[i] + .disabled=true) ; et d'autres choses mais rien à faire, Si quelqu'un aurait la solution.
Merci :)
samedi 29 mai 2004 à 07:46:52 | Re : Comment Griser pleins de controles (checkbox) en une boucle ???

bultez

Membre Club
Bonjour
accéder à tous les champs d'un formulaire :

for ( n=0;n<formulaire.elements.length;n++)
{ utiliser formulaire.elements[n] ... }

on peut tester leur type:

if (formulaire.elements[n].type=="text") ...

j'espère que j'avais compris la question.
Cordialement. Bul.
samedi 29 mai 2004 à 15:28:36 | Re : Comment Griser pleins de controles (checkbox) en une boucle ???

SnowAngeL


Le soucis est que je ne veut pas griser tous les controles, seulement ceux que je spécifie dans mon tableau Texte[].

Vérifier avec
if (formulaire.elements[n].type=="text") ...
ne vérifie que le type du champs alors que je veux vérifier le nom.

Cette méthode s'applique également dans la mesure ou l'on ne change pas l'ordre des controles puisqu'ils sont désignés par un index.

Mon soucis c'est de pouvoir concaténer a chaque boucle le nom de mon controle avec
document.forms["ma_form"]. + Texte[i] + .disabled=true ;
mais il n'accepte pas cette Syntaxe.

Pour etre plus clair si dans votre exemple
if (formulaire.elements[n].type=="text") ...
qui se trouve dans une boucle d'index N, vous vouliez remplacer le 'elements[n]' par le tableau comprenant la liste des element 'tableau[N]' ?

la méthode suivante ne marche pas
if (formulaire. + tableau[n] + .type=="text") ...
puisque c'est celle que j'applique dans mon script.
J'espere avoir été assez clair.
Cordialement, Snow
samedi 29 mai 2004 à 16:19:41 | Re : Comment Griser pleins de controles (checkbox) en une boucle ???

bultez

Membre Club
je ne suis pas sûr que l'on puisse y
arriver avec formulaire."nom en variable"
on peut utiliser getElementById(id), du genre :

var toucher=new Array("nomid1","nomid2"....);
for (var i=0;i<toucher.length;i++)
utiliser getElementById(toucher[i])....

ou en donnant les n° de champs, exemple :

var toucher=new Array(1,3,....);
for (var i=0;i<toucher.length;i++)
utiliser formulaire.elements[toucher[i]]...

attention aux Majuscules/minuscules, Syntaxe :
pas controlé, pas testé.
@+
samedi 29 mai 2004 à 16:22:12 | Re : Comment Griser pleins de controles (checkbox) en une boucle ???

bultez

Membre Club
la fin du message a été pommé ?
en donnant les n° de champs, exemple :

var toucher=new Array(1,3,....);
for (var i=0;i<toucher.length;i++)
utiliser formulaire.elements[toucher[i]]...

attention aux Majuscules/minuscules, Syntaxe :
pas controlé, pas testé.
@+
mercredi 9 juin 2004 à 11:01:22 | Re : Comment Griser pleins de controles (checkbox) en une boucle ???

SnowAngeL

Ah ca commence a me gonfler, ca marche pas et pour optimiser mes pages il faut ce script marche !
je vais pas taper 50X la ligne pour bloquer les 50 champs si jpeux faire ca en une boucle avec un tableau !

ca devrait marcher ca:

<script>
Texte = new Array("nom","prenom","age");
for (i=0;i<3;i++) document.forms[0].getElementById(Texte[i]).disabled=true ;
</script>

mercredi 9 juin 2004 à 11:16:43 | Re : Comment Griser pleins de controles (checkbox) en une boucle ???

bultez

Membre Club
oui, ça marche

<BODY>
<form name=frm>
<input type=text id=nom>
<input type=text id=prenom>
<input type=text id=age>
</form>
<script type="text/javascript">
Texte = new Array("nom","prenom","age");
for (i=0;i<Texte.length;i++)
document.getElementById(Texte[i]).disabled=true ;
</script>
</BODY></HTML>

Cordialement Bul. [Site] [Mail]
mercredi 9 juin 2004 à 11:23:55 | Re : Comment Griser pleins de controles (checkbox) en une boucle ???

SnowAngeL

A mon Dieu...
Y'avais une erreur javascript, je pensais ct un gros Bug qui bloquait mes champs alors qu'ils étaient simplement bel et bien griser mais l'erreur provenait du dernier champs qui était mal nommé !
Enfin sous XP, le grisage est bcp moins visible que sous 98 je m'y perds souvent :(

Enfin Voila Je suis bien content merci de ton aide Marcel ;)


Cette discussion est classée dans : code, texte, forms, document, griser


Répondre à ce message

Sujets en rapport avec ce message

nom de champ [ par ehmarc ] salutj'ai un souci mineur j'ai un script qui tourne tres bien sur une page avec des champ du style document.forms["form1"].elements["pipo"] </tabl Désactiver la sélection d'un texte [ par GanJasTeR ] Bonjour.J'aimerais obliger les visiteurs de mon site à rentrer un code de confirmation se trouvant sur la page d'inscription.Généralement ce code est pb code [ par dodo1309 ] Hello ,Comment dois-je modifié ce code pour qu'il marche sous IE ?  var Obj = parent.frames['liste'].document.forms['form1'].lstjeux;          var Opt Problème d'ajout de texte dans un textearea [ par Moritus ] Bonjour, J'ai quelque petit soucis avec un bout de code. J'aimerais ajouter du texte dans un textearea lorsque je clique sur un bouton. J'ai trouv recharger les variables suite à un reload [ par goyave ] bonjour suite à un changement de machine et de prog je me trouve confronté à un probleme enervant j'ai un formulaire avec les champs [code=autre]nom mettre une iframe dans un tableau (une cellule) [ par adris ] Bonjour, je suis entrain de réaliser un éditeur WYSIWYG. [u]Pour IE :[/u] j'écris le texte dans la balise div et j'arrive à la mettre dans le tableau Javascript + html et php [ par j3r3m067 ] Bonjour à tous, Voilà je dois accélérer la vitesse de chargement d'une page php qui liste dans un repertoire, et qui me retourne un tableau. Ce que je Formulaire : faire réapparaitre la valeur si case vide [ par a44icus ] Bonjour, J'ai un code javascript pour vérifier un formulaire ci-dessous. Dans le code html du formulaire j'ai mis un : onClick="this.value=''" pour Menu accordeon [ par NNonepse ] Bonjour, J'utilise un menu accordéon sur mon site dont voici le code : Coté JavaScript : [code=js]$(document).ready(function() { $('.accordeon').h probleme javascipt et IE8 sur input type button [ par poz924 ] Bonjour tout le monde, je vous explique mon problème, j'ai un bouton de ce type là: [code=html][/code] qui déclenche une fonction javascr


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,749 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales