IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Ext JS / Sencha Discussion :

Nouveau tab avec contenu d'une url


Sujet :

Ext JS / Sencha

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté Avatar de JulienFio
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 201
    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

  2. #2
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    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 : 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
    /**
     * 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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  3. #3
    Membre expérimenté Avatar de JulienFio
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 201
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    monPanel.load({
                 url:record.data.url
    });
    mais j'ai une erreur à l'exécution:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  4. #4
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    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

  5. #5
    Membre expérimenté Avatar de JulienFio
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 201
    Par défaut
    Ah, j'avais mal compris. En effet je vais procéder comme tu me l'indiques.

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Afficher le contenu d'une URL avec XSLT
    Par gregos_b dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 04/03/2009, 09h52
  2. Comment récupérer le contenu d'une URL dans une variable ?
    Par Fildz dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/08/2006, 09h26
  3. [URL] Obtenir le contenu d'une url
    Par cterra dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 08/08/2006, 10h01
  4. [VBA-E]Remplir combobox avec contenu d'une feuille Excel
    Par Deejoh dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 07/03/2006, 16h16
  5. [impression] imprimer le contenu d'une url
    Par FFF dans le forum Autres Logiciels
    Réponses: 4
    Dernier message: 30/11/2005, 15h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo