Bonjour

Je vais un peu expliquer le contenu de cette partie mon projet pour commencer.

En gros, il s'agit d'ensemble de scripts PHP, avec tout pleins de fonctions PHP et quelques fonctions Javascript.

Parmi les fonctions PHP, celle qui gère le multipage de tableau. Elle fonctionne bien en temps normal, les checkbox de chaque ligne sélectionnée d'un tableau étant sauvegardées en revenant sur la page en question. Tout ceci passant en utilisant un submit du formulaire en question.

Là où ça se complique, c'est lorsque j'utilise un objet DataGrid de la librairie Dojo pour formater le tableau (entre autre). J'ai réussi à pouvoir récupérer les données sélectionnées via une fonction qui crée une "checkbox invisible" pour chaque élément sélectionné.
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
function selectInForm(myForm)
{
	var items = grid0.selection.getSelected();
	if(items.length)
	{
		dojo.forEach(items, function(selectedItem) {
			if(selectedItem !== null) 
			{
				var docSel = document.createElement('INPUT');
				docSel.setAttribute('type', 'hidden');
				docSel.name = 'selItem[]';
				docSel.value = grid0.store.getValues(selectedItem, \"DOC_ID\");
				docSel.setAttribute('checked', true);
				myForm.appendChild(docSel);
			}
		});
	}
}
Bref, ce n'est toujours pas le soucis à mon avis.

Pour appeler cette fonction, j'utilise une de mes fonctions "génériques" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
function addEvent (obj, evName, fct) 
{
	if (obj.attachEvent)
		obj.attachEvent("on" + evName, fct);
	else
		obj.addEventListener(evName, fct, false);
}
Ce qui donne en gros dans mon cas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
addEvent(window, 'load', function () {
		addEvent(formulaire, 'submit', selectInForm);
	});
Comme ça ne fonctionnait pas (ça ne rentre même pas dans la fonction), j'ai testé en changeant le addEvent submit par le "click". Ca fonctionne bien, mais évidemment je ne peux pas utiliser cette solution puisqu'inconvenable à la situation : création de checkbox même quand on désélectionnait les lignes, ce qui est logique puisque l'événement était déclenché à chaque clic sur le tableau.

Même en testant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
addEvent(formulaire, 'submit', function(){ alert('ok'); });
ça n'est pas pris en compte.


Là je me prends un peu trop la tête dessus, les recherches n'emmènent rien, les collègues n'aident pas pour se concentrer correctement sur ça, bref... le caca
C'est donc pour ça que je viens appeler au secours chez mes amis DVP
Merci d'avance !