Bonjour,

J'essaye en vain de transmettre des arguments surchargés à une sous fonction (elle même passé en argument).
J'ai bien compris les erreurs de toutes mes différentes techniques mais je ne connais pas la solution...
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
41
42
43
44
45
46
47
48
function name2obj(name, fonction)//execute la 'fonction' avec ses argument eventuels (à passer en surcharge) sur tous les objets 'name'
{
	//technique 1 : fail
	for (i=0; i<document.getElementsByName(name).length; i++) fonction(document.getElementsByName(name)[i], name2obj.arguments.splice(0,2));
 
	//technique 2 : fail
	for (i=0; i<document.getElementsByName(name).length; i++)
	{
		fonction.arguments[0] = document.getElementsByName(name)[i];
		for (j=2; j<name2obj.arguments.length; j++) fonction.arguments[j-1] = name2obj.arguments[j];
		fonction();
	}
 
	//technique 3 : fail
	for (i=0; i<document.getElementsByName(name).length; i++)
	{
		for (j=2; j<name2obj.arguments.length; j++) arg += ', '+name2obj.arguments[j];
		var func = fonction(document.getElementsByName(name)[i]+arg);
		funct();
	}
 
	//technique 4 : fail
	for (i=0; i<document.getElementsByName(name).length; i++)
	{
		var func = 'fonction('+document.getElementsByName(name)[i];
		for (j=2; j<name2obj.arguments.length; j++) func += ', '+name2obj.arguments[j];
		func += ')';
		eval(func);
	}
 
	//technique 5 : fail
	for (i=0; i<document.getElementsByName(name).length; i++) fonction(function ()
									{
										var arg = '';
										arg += document.getElementsByName(name)[i];
										for (j=2; j<name2obj.arguments.length; j++) arg += ', '+name2obj.arguments[j];
										return arg;
										});
 
	//technique 6 : fail
	for (i=0; i<document.getElementsByName(name).length; i++)
	{
		var arg = '';
		arg += document.getElementsByName(name)[i];
		for (j=2; j<name2obj.arguments.length; j++) arg += ', '+name2obj.arguments[j];
		fonction(arg);
	}
}//ex d'appel : name2obj(cible, switchClassName, classname1, classname2);
Merci de m'aider