Bonjour à tous,

Je vous soumet un petit problème, j'ai cherché sur la toile pour voir si le point avait été abordé mais ma recherche a été vaine.

Contexte:
J'ai une page WEB avec un tableau dynamiquement mis à jour via JSON. Sur chaque ligne possède une checkbox, sur un clic de cette checkbox je souhaite envoyer un requète au serveur avec l'identifiant de la ligne.

Je réagis bien au clic, j'initie une méthode javascript dans laquelle j'arrive à extraire l'identifiant de ma ligne et ensuite appeler ma méthode AJAX (Je fais un GET et je positionne les variables dans un content). Malheureusement je n'arrive pas à rendre ce content dynamique.

J'ai extrait le code mis en oeuvre, au niveau serveur je reçois mes deux parametres mais toujours avec les valeur 'default'.

Pouvez-vous m'aider à envoyer des données modifiées dynamiquement ?

Merci
Marc


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
49
50
51
52
53
54
55
56
 
var currentBagId = 'default';
var currentBagAction = 'default';
 
// la def de mon invocation AJAX
var lockBag = {
    url: 'lockBag.do',
    content: { bagId: currentBagId, bagAction:currentBagAction },
    form: "mainForm",
    handleAs: "json",
    load: function(response, ioArgs){
    	alert('here');
    	store = new dojo.data.ItemFileWriteStore({data:response});
    	store.fetch({
			onComplete: function(items, result){
				dojo.forEach(items, function(item){
					var itemId = store.getIdentity(item);
					myItem = item;
					jsonStore.fetchItemByIdentity({
							identity: itemId, 
							onItem: handleFetchByIdentityForLock
						});
				});
			}	 
		}); 
    	return;
    },
    error: function(response, ioArgs) { 
       return response; //
    },
    timeout: 4000
};
 
// la méthode qui réagit au clic
var selectItem = function(item)
{
	if (item && jsonStore.isItem( item ))
	{
		var val = jsonStore.getValue(item,"selected");
		var newVal = ((val==true) ? false : true);
 
		if(newVal==true)
		{
			currentBagId = jsonStore.getValue(item,"bagId");
			alert('currentbagId: ' + currentBagId);
			currentBagAction = 'select';
			dojo.xhrGet(lockBag);
		}
		else
		{
			currentBagId = jsonStore.getValue(item,"bagId");
			currentBagAction = 'unselect';
			dojo.xhrGet(lockBag);
		}
	}
}