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

Bibliothèques & Frameworks Discussion :

Créer un div contenant des widgets Dojo


Sujet :

Bibliothèques & Frameworks

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2011
    Messages
    97
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2011
    Messages : 97
    Par défaut Créer un div contenant des widgets Dojo
    Bonjour,
    Voilà mon problème : J'ai un div initial qui va contenir des widgets Dojo (essentiellement des éléments de formulaire => TextBox, DateTextBox ...), et j'aimerai pouvoir dupliquer exactement le Div contenant tout ceci (et bien entendu que les éléments en dojo, le restent).

    J'ai bien essayé de bidouiller quelque chose avec les fonction dojo.create() et dojo.clone() mais sans succès...

    Mon bout d'essai :

    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
    function createDiv(){
            var monDiv = dijit.byId("test");
     
            dojo.create("div", {
                innerHTML: monDiv,
                id: "div1_1", 
                className: 'maClasse',
                style: {
                    height : "500px", 
                    width: "80%", 
                    backgroundColor : "red"}
            }, "divMain");
        }
     
    <s:form data-dojo-type="dijit.form.Form" 
                data-dojo-props="method: 'post',
                action: 'monAction'"
                theme="simple">
            <script type="dojo/method" event="onSubmit">
                if(!this.validate()) {
                return false;
                }
                return true;
            </script>
            <s:div id="test">
                 // Mes widgets Dojo ...
            </s:div>
    </s:form>
    Ma partie "innerHTML" me génère un beau : "undefined"

    Quelqu'un aurait il une idée svp ?

    Merci d'avance

  2. #2
    Membre confirmé
    Homme Profil pro
    Apprenti Informatique
    Inscrit en
    Avril 2009
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2009
    Messages : 83
    Par défaut
    Essaie avec monDiv.domNode mais je ne comprends pas trop ta problématique.

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2011
    Messages
    97
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2011
    Messages : 97
    Par défaut
    Je vais essayer d'être le plus clair possible.
    Je vais prendre par exemple le cas ou je veux ajouter plusieurs clients d'un coup.

    J'appuie sur le bouton "ajouter un client", et j'ai un petit formulaire (contenant des widgets Dojo) qui doit s'afficher en dessous (sans jamais changer ni rafraichir la page).
    Si je reclique sur ce meme bouton, un nouveau formulaire doit venir se placer en dessous du 1er, etc ...

    Tu vois un peu plus de quoi il s'agit ?

    PS :
    Citation Envoyé par cfried Voir le message
    Essaie avec monDiv.domNode mais je ne comprends pas trop ta problématique.
    Tu pourrais m'expliquer a quoi ca sert stp ? Merci

  4. #4
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2010
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2010
    Messages : 322
    Par défaut
    Bonjour,

    Je pense qu'en allant voir les péripéties que se sont déroulées ICI Vous devriez trouver votre bonheur

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2011
    Messages
    97
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2011
    Messages : 97
    Par défaut
    Merci de ta réponse Daniel, malheureusement je n'ai pas trouvé mon bonheur dans ton lien

  6. #6
    Membre confirmé
    Homme Profil pro
    Apprenti Informatique
    Inscrit en
    Avril 2009
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2009
    Messages : 83
    Par défaut
    Ok alors je comprends mieux ton problème.

    A mon avis tu devrais modifier ta fonction de création de div pour qu'elle prenne un noeud "cible" en paramètre.

    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
    var createDiv = function(node) {
    	dojo.create("div", {
    		innerHTML : "<div> test </div>",
    		id : "div1_1", // je ne mettrai pas d'id manuellement perso car ça va s'écrasouiller tout ça ^^
    		className : 'maClasse',
    		style : {
    			height : "500px",
    			width : "80%",
    			backgroundColor : "red"
    		}
    	}, node, "after");
    };
    var btnAdd = new dijit.form.Button({
    	label : "monBouton",
    	onClick : function() {
    		createDiv(dojo.query('.maClasse:last-of-type').domNode);
    	}
    });
    Bon j'ai pas testé ce code et je ne suis pas sûr que l'on puisse sortir le domNode directement du dojo.query ... il faudrait adapter mais je voulais te donner le principe.

    Ensuite dans ton innerHTML tu peux mettre ce que tu veux mais si tu mets des markups Dojo je pense qu'il faut le parser manuellement.

    Si tu as d'autres questions n'hésites pas ...

Discussions similaires

  1. onmouseout sur div contenant des liens
    Par joKED dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 20/04/2009, 10h56
  2. Créer des widgets Dojo depuis ZF
    Par Yogui dans le forum Zend_Form
    Réponses: 2
    Dernier message: 10/07/2008, 11h31
  3. [Prototype] Texte chargé dans une <div> contenant des balises <script>
    Par wenijah dans le forum Bibliothèques & Frameworks
    Réponses: 4
    Dernier message: 22/11/2007, 17h28
  4. [XHTML] Pb d'espaces entre Div contenant des images en XHTML Strict
    Par kiouz dans le forum Balisage (X)HTML et validation W3C
    Réponses: 16
    Dernier message: 16/07/2007, 19h19
  5. actualiser une DIV contenant des images
    Par jc_cornic dans le forum Langage
    Réponses: 6
    Dernier message: 21/10/2006, 15h42

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