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
| // construction du store pour l'accès aux données
var jsonData = new dojo.data.ItemFileReadStore({url: 'tmp/datas.json'});
// fonction d'affectation des données
function initData(items, request){
var item;
for (i = 0; i < items.length; i++) {
item = items[i];
idvar = jsonData.getValue(item,"idvar");
switch(idvar){
case 'xposnom': xposnom.attr('value',jsonData.getValue(item,"valeur"));
break;
case 'yposnom': yposnom.attr('value',jsonData.getValue(item,"valeur"));
break;
case 'nomfichier': image.attr({content: '<img src="tmp/' + jsonData.getValue(item,"valeur") + '"/>'}); // ici image est un ContentPane
break;
case 'datcre': datcre.attr('value',jsonData.getValue(item,"valeur"));
break;
case 'datmod': datmod.attr('value',jsonData.getValue(item,"valeur"));
break;
case 'chkboxnom': if (jsonData.getValue(item,"valeur") == 'true'){
dijit.byId("caseNom").attr('value',true); // ici je ne suis pas parvenu à référencer la CheckBox directement.
}
break;
.........
}
}
// fonction de callback en cas d'erreur
function fetchError(error, request){
alert("Erreur sur la récupération des données : " + error);
}
// Initialisation des champs
jsonData.fetch(
{query: {idvar: '*'},
onComplete: initData,
onError: fetchError,
queryOptions: {deep: false}
}); |
Partager