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 08/06/2011, 20h56   #1
Membre éclairé
 
Avatar de JulienFio
 
Julien Fiorentino
Inscription : novembre 2007
Messages : 201
Détails du profil
Informations personnelles :
Nom : Julien Fiorentino
Âge : 28
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : novembre 2007
Messages : 201
Points : 336
Points : 336
Par défaut Nouveau tab avec contenu d'une url

Bonjour,

Comment doit-on procéder pour que lors de la création d'un onglet de tabpanel il est comme contenu le résultat d'une url ?

J'imagine que l'on doit passer par l'attribut html du dit panel.


Merci
__________________
Non l'homme ne descend pas du singe, il descend plutôt du mouton..
JulienFio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2011, 10h35   #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
faire une requête ajax récupérer le html de la réponse
ouvrir le panet avec l'attribut html: affecté avec le contenu

sinon j'avais écrit pour ext3 un panel qui utilise un template
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
/**
 * templatePanel
 *
 * définit un Panel qui gère seul un template associé
 */
Ext.namespace('Ext.ux');
 
Ext.ux.TemplatePanel = Ext.extend(Ext.Panel, {
    //à l'initialisation créer le template.
    initComponent: function() {
        Ext.ux.TemplatePanel.superclass.initComponent.call(this);
        if (typeof this.tpl === 'string') {
            this.tpl = new Ext.XTemplate(this.tpl);
        }
    },
 
    // lors du rendu générer le contenu html.
    onRender: function(ct, position) {
        Ext.ux.TemplatePanel.superclass.onRender.call(this, ct, position);
        if (this.data) {
            this.update(this.data);
        }
    },
 
    //sur mise à jour régénérer le contenu html.
    update: function(data) {
        this.tpl.overwrite(this.body, data);
    }
});
Ext.reg('templatepanel', Ext.ux.TemplatePanel);
l'usage se faisant par
Code :
1
2
3
4
5
6
7
{
            //titre de l'onglet fournis par les infos locales
            xtype:  'templatepanel',
            colspan:  4,
            tpl:  locale.WeekDashboardPanel.template,
            data:  {name:  info.parentNode.attributes.text}
        }
la partie qui t'intéresse la dedans c'est la méthode update qui modifie le body
le plus simple étant tout de même de connaitre le contenu avant la création est de le passer à l'attribut html du panel à la construction.

A+JYT
sekaijin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2011, 11h09   #3
Membre éclairé
 
Avatar de JulienFio
 
Julien Fiorentino
Inscription : novembre 2007
Messages : 201
Détails du profil
Informations personnelles :
Nom : Julien Fiorentino
Âge : 28
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : novembre 2007
Messages : 201
Points : 336
Points : 336
Merci Sekaijin,

En fait je sais comment affecter du html à un panel, là n'est pas mon problème. Je suis en possession d'un grid et lors d'un click sur un item je veux ouvrir un onglet avec comme rendu le résultat de l'url récupérée sur l'item en question.

J'ai essayé ceci:
Code :
1
2
3
4
 
monPanel.load({
             url:record.data.url
});
mais j'ai une erreur à l'exécution:
Code :
1
2
 
XML descendants internal method called on incompatible Object
Sinon, comment récupérer le html à partir de l'url ?

EDIT: l'url renvoie vers une servlet java
__________________
Non l'homme ne descend pas du singe, il descend plutôt du mouton..
JulienFio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2011, 11h19   #4
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
c'est bien ce que je dis

tu fais une requête ajax sur ton url
dans le callback success tu récupère le source html généré
et tu ouvre ton panel en lui affectant le html récupéré.

A+JYT
sekaijin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2011, 11h39   #5
Membre éclairé
 
Avatar de JulienFio
 
Julien Fiorentino
Inscription : novembre 2007
Messages : 201
Détails du profil
Informations personnelles :
Nom : Julien Fiorentino
Âge : 28
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : novembre 2007
Messages : 201
Points : 336
Points : 336
Ah, j'avais mal compris. En effet je vais procéder comme tu me l'indiques.

Merci
__________________
Non l'homme ne descend pas du singe, il descend plutôt du mouton..
JulienFio 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 21h06.


 
 
 
 
Partenaires

Hébergement Web