Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > Ext JS / Sencha
Ext JS / Sencha Ext JS / Sencha Forum d'entraide sur les frameworks Ext JS et Sencha. Avant de poster : FAQ ExtJS / Sencha, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/06/2011, 12h09   #1
Membre confirmé
 
Homme
Étudiant
Inscription : mai 2007
Messages : 249
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 35
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2007
Messages : 249
Points : 240
Points : 240
Par défaut Appel rowdblclick dans un tableau

Bonjour,

J'ai un tableau sur lequel j'ai mis un event row double clique.
Qui appel l'affichage (dans un template) d'un document via une iframe.
Cela fonctionne correctement sauf le premier appel qui remonte une erreur dans firebug:
Citation:
el is null
el.innerHTML = this.applyTemplate(values);
fichier : ext-all-debug.js à la ligne 658.

Lors du second appel du double clique je n'est aucun problème et le document s'affiche correctement sans remonter d'erreur...

Mon tableau est dans un layout card et l'affichage est lui aussi dans le mm layout card.

Si l'un de vous a une idée du pourquoi j'ai une erreur au premier appel : ))))

Merci par avance
abraxis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2011, 12h18   #2
Expert Confirmé
 
Avatar de sekaijin
 
Femme
Urbaniste
Inscription : juillet 2004
Messages : 1 421
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 48
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Urbaniste
Secteur : Santé

Informations forums :
Inscription : juillet 2004
Messages : 1 421
Points : 2 809
Points : 2 809
ben sans savoir ce que tu as mis dans ton code ça va être dur
A+JYT
sekaijin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2011, 13h15   #3
Membre confirmé
 
Homme
Étudiant
Inscription : mai 2007
Messages : 249
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 35
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2007
Messages : 249
Points : 240
Points : 240
oui pardon

Fonction du double clique:
Code :
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
function rowDblClickReport(grid, rowIndex, event)
{
	var countApps = storeAppReport.totalLength;
	var json = grid.selModel.selections.items[0].json;
	var nbOngletReport = panelCenterReport.items.length;
	if(json.vide == false)
	{	
		if(json.leaf == false) // Si le double clic est sur un dossier...
		{
			for(var i = 0; i < countApps; i++)
			{
				var theState = Ext.state.Manager.get("treeStateReporting");
				if (theState != undefined)
				{
					Ext.getCmp('treePanelReport' + storeAppReport.getAt(i).get('idApp')).expandPath(theState);
				}
				if(Ext.getCmp('treePanelReport' + storeAppReport.getAt(i).get('idApp')).collapsed == false)
				{
					storeGridReport.load({
						params: { // Envois des paramètres 
							task: 'folderReport',
							idUser: idUser.get("AuthStateMD.idUser"),
							idApp: storeAppReport.getAt(i).get('idApp'),
							libApp: storeAppReport.getAt(i).get('libApp'),
							typeApp: storeAppReport.getAt(i).get('typeApp'),
							dossierRoot: json.dossierRoot,
							nomServer: storeAppReport.getAt(i).get('nomServer'),
							urlNode: json.url,
							node: storeGridReport.data.items[rowIndex].id,
							flagTree: '1',
							start: 0, 
							limit: pageSizeReport
						}
					});
 
					panelCenterReport.layout.setActiveItem(gridReport);
					Ext.getCmp('treePanelReport' + storeAppReport.getAt(i).get('idApp')).getNodeById(storeGridReport.data.items[rowIndex].id).expand();
					Ext.getCmp('treePanelReport' + storeAppReport.getAt(i).get('idApp')).getNodeById(storeGridReport.data.items[rowIndex].id).setIconCls('openFolder');
 
				}
			}
		}
		else // Si le double clic est sur un fichier...
		{
			panelCenterReport.layout.setActiveItem(panelCenterViewReport);
			panelCenterViewReport.setTitle(json.text);
			dataViewReport.tpl.overwrite('dataViewReport', { url: json.url }); // Envoie de l'url du fichier au template qui est dans un dataView
		}
	}
}
fichier de ma region centre:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
var panelCenterReport = new Ext.Panel({
	id: 'panelCenterReport',
	title: titlePanelCenterReport,
	region: 'center',
	activeItem: 0,
	layout: 'card', 
	margins: '5 5 5 0',
	items: [
		panelCenterHomeReport,
		gridReport,
		panelCenterViewReport
	]
	,
	listeners: {
		beforerender: function(obj)
		{
			storeHomeReport.load();
		}
	}
});
fichier avec le dataView :
Code :
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
var dataViewReport = new Ext.DataView({
    id: 'dataViewReport',
	itemSelector: 'div.thumb-wrap',
	autoScroll: true,
	tpl: new Ext.XTemplate(
		'<tpl for=".">',
			'<iframe style="border: 0px;" src="{url}" height="100%" width="100%" scrolling="yes" />',
		'</tpl>',
		'<div class="x-clear"></div>'
	)
});
 
var panelCenterViewReport = new Ext.Panel({
	id: 'panelCenterViewReport',
	border: false,
	layout: 'fit',
	tools: [
		{
			id: 'close',
			handler: function(event, tool, obj, idTools)
			{
				panelCenterReport.layout.setActiveItem(gridReport);
			}
		}
	],
	items: dataViewReport
});
abraxis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2011, 17h04   #4
Membre confirmé
 
Homme
Étudiant
Inscription : mai 2007
Messages : 249
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 35
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2007
Messages : 249
Points : 240
Points : 240
Je viens de tester en supprimant le dataView pour mettre directement le tempalte dans le panel mais la j'ai un autre problème...
Je n'est en effet plus d'erreur dans firebug.
Le document ne prend pas en compte le layout: 'fit' de mon panel. Ce qui a pour effet de ne pas remplir mon panel.
J'ai essayé de mettre une taille fixe ou encore un autoHeight mais rien à faire
abraxis est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h10.


 
 
 
 
Partenaires

Hébergement Web