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

JavaScript Discussion :

Passage de paramètres lors d'un onclick=.show()


Sujet :

JavaScript

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    291
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2007
    Messages : 291
    Points : 217
    Points
    217
    Par défaut Passage de paramètres lors d'un onclick=.show()
    Bonjour,

    Je développe un planning et lorsque je clique sur une case de ce planning, j'affiche une dojowidget dialog contenant un formulaire qui permet de rentrer des infos.

    Tout fonctionne parfaitement sauf que je voudrai (pour ameliorer l'ergonomie ) pouvoir recuperer l'id de la case sur laquelle on vient de cliquer.
    Pour afficher la widgetdialog je fais un onclick="monformulaireAafficher.show()" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <td class="cellule_jour">
    <div>
    	<input type="button" id="2007-08-12 onclick="javascript:monformulaireAafficher.show();" value="A">
    </div>
    </td>
    Comment recuperer "2007-08-12"?

    La widget dialog est codé ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <div dojoType="dialog" id="monformulaireAafficher" style="border:thin" bgOpacity="0.5" toggle="fade" toggleDuration="250">
    	Horaires
     
    	<form id="formulaireHoSa"  method="post">
     
    		<div class="formFrame">
     
    			<div class="formRow">
    				<label for="datedebut">Date de d&eacute;but</label>
    				<input type="text" name="datedebut" id="datedebut" value="idQue Je Veux Recuperer"    dojoType="dropdowndatepicker"/>
    			</div>
    </div></form></div>
    Merci de votre aide car je suis un peu paumée!

  2. #2
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Regarde la coloration syntaxique, il manque une quote après l'id

    Pour le récupérez, vire le "javascript:", qui est faux, et utilise this.id
    Fremy
    Pour vos développements Web et une navigation agréable, le tout gratuit :
    1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !)
    2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    291
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2007
    Messages : 291
    Points : 217
    Points
    217
    Par défaut
    Merci de ton aide mais je crois que je comprends pas tres bien ce que tu veux dire...

    J'ai rajouté la quote mais je peux pas faire this.id puisque c'est monformulaireAafficher que je veux ...

    Est-ce que je peux faire monformulaireAafficher.show(this.id)??

    Et si oui comment je le recupere apres?

  4. #4
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    oui tu peux faire ca mais quelle est la fonction de show() ?
    -------------------------------------------------------------
    ben à la function show tu ajoute un argument id et c'est tout
    Fremy
    Pour vos développements Web et une navigation agréable, le tout gratuit :
    1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !)
    2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    291
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2007
    Messages : 291
    Points : 217
    Points
    217
    Par défaut
    Le problème c'est que show ce n'est pas une fonction développé par moi mais integre au framework dojo. Cette fonction permet d'afficher un div qui est caché.

    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
     
    dojo.widget.Dialog.show = function () {
         if(this.lifetime){
            this.timeRemaining = this.lifetime;
            if(this.timerNode){
              this.timerNode.innerHTML = Math.ceil(this.timeRemaining/1000);
            }
            if(this.blockDuration && this.closeNode){
              if(this.lifetime > this.blockDuration){
                this.closeNode.style.visibility = "hidden";
              }else{
                this.closeNode.style.display = "none";
              }
            }
            if (this.timer) {
              clearInterval(this.timer);
            }
            this.timer = setInterval(dojo.lang.hitch(this, "_onTick"), 100);
          }
          this.showModalDialog();
          dojo.widget.Dialog.superclass.show.call(this);
    }
    Voici le lien de l'api dojo ou il ya ce code et l'explication de la widget dialog. Si tu as le courage d'y jeter un coup d'oeil!
    http://dojotoolkit.org/api

    Merci beaucoup pour ton aide, je vais continuer à chercher et voir si ya moyen de la redefinir cette fonction!

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    291
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2007
    Messages : 291
    Points : 217
    Points
    217
    Par défaut
    Effectivement, j'ai pu redefinir une fonction show('laWidgetAAfficher');

    Dans cette nouvelle fonction, je remplis les champs du formulaire grace à l'id de la case que j'ai recuperé en appalant un script php sur le serveur via dojo.io.bind() puis j'affiche le formulaire via la fonction laWidgetAAfficher.show(); et ça marche impeccable.

    Problème résolu donc, merci pour ton aide!

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 30/01/2014, 19h10
  2. Réponses: 2
    Dernier message: 22/04/2010, 10h14
  3. Réponses: 2
    Dernier message: 09/12/2009, 09h44
  4. Réponses: 2
    Dernier message: 23/05/2008, 15h06
  5. Réponses: 2
    Dernier message: 09/01/2006, 09h38

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