begin process at 2012 05 29 05:30:14
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript Orienté objet (POO)

 > 

Evènements

 > 

el.onclick = function([param]){};


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

el.onclick = function([param]){};

mardi 16 février 2010 à 14:18:05 | el.onclick = function([param]){};

xactise

Membre Club
Bonjour à tous.

je vous expose mon problème.

J'intéroge une base de donnée avec ajax, je récupère les donnée souhaité au format JSON, et j'utilise ces données pour faire du DOM.

Exemple ci dessous :

Code Javascript :
var globalDIV = document.getElementById('globalDIV');
for(var i=0; i<myJSON.length;i++)
{
    var div = document.createElement("div");
    div.onclick = function(){};

    globalDIV.appendChild(div);
}


Mon souci est qu'au niveau de l'evenement "onClick" de mon element div créé. je souhaiterai faire une fonction avec paramètre. Après quelque recherche sur internet j'ai vu ceci :


//NOTE: showPopup();
//or showPopup(param);
//will NOT work here.
//Must be a reference to a function,
//not a function call.



En gros et si je comprends bien, on peut faire référence a une fonction existante ou directement créer sa fonction mais sans paramètre(s).

Or moi je voudrai bien lui ajouter un évènement onClick avec une fonction avec paramètre.

Exemple :
Code Javascript :
    div.onclick = function(myJSON.value[i]){
    switch(myJSON.value[i])
    {
        ...statements...
    }
};


Je sais pas si je suis clair, si vous avez une réponse ou une alternative à me proposer je suis preneur.

D'avance merci

L0rD...
mardi 16 février 2010 à 21:32:49 | Re : el.onclick = function([param]){};

PetoleTeam

Membre Club
Réponse acceptée !
Bonjour,
Or moi je voudrai bien lui ajouter un évènement onClick avec une fonction avec paramètre.
...une solution consiste à ajouter une propriété à l'objet et à l'utiliser dans la fonction, un petit exemple ci après
Code HTML :
<html>
<head>
<script type="text/javascript">
//--------------------
function Init_Page( ){
  var T_Div = document.getElementsByTagName( 'DIV');
  for( var i = 0; i < T_Div.length; i++){
    T_Div[i].param = i;
    T_Div[i].onclick = function(){
      switch( this.param){
        case 0:
        case 1:
          alert( this.param +'\nINFERIEUR à 2');
          break;
        default:
          alert( this.param +'\nSUPERIEUR à 1');
      } 
    }
  }
}
</script>
</head>
<body onload="Init_Page();">
<div>Ligne 1</div>
<div>Ligne 2</div>
<div>Ligne 3</div>
<div>Ligne 4</div>
</body>
</html>

;O)
lundi 1 mars 2010 à 08:49:58 | Re : el.onclick = function([param]){};

xactise

Membre Club
Merci je ne sais pas si c'est "propre" mais sa marche, je valide, si d'autres personnes ont d'autres proposition je reste preneurs.


L0rD...
mercredi 3 mars 2010 à 18:07:28 | Re : el.onclick = function([param]){};

PetoleTeam

Membre Club
Bonjour,
je ne sais pas si c'est "propre"
ajouter une propriété à un objet, rien de plus courant...
...on aurait pu ajouter un attribut en utilisant setAttribute, cela aurait peut être été plus classe...
;O)


Cette discussion est classée dans : fonction, function, code, div, onclick


Répondre à ce message

Sujets en rapport avec ce message

Connaitre la fin d'une fonction [ par Angelblade ] Bonjour à tous, je vais essayer de vous expliquer mon souci ^^'.Je veux pouvoir répéter une portion de code tous les X ms et une fois que le code a ét Changer la couleur d'une DIV par onkeyup sur un champ text [ par drijnou ] Bonjour, Je suis pas tres à l'aise en Javascript et j'ai codé une toute petite fonction qui marche comme prévue sous IE et FF mais qui genere une err Retailler div apres chargement image [ par jashugan ] Bonjour, Voilà mon problème, j'ai une lightbox que j'affiche, dans cette lightbox j'ai une image qui se charge. J'ai une fonction javascript qui me Fonction qui ne fonctionne que par onclick [ par etu54 ] Bonjour a tous, Voila mon probleme sur lequel je me casse la tete depuis quelques heures est en rapport avec une biblioteque que j'ai trouver sur le Soucis onclick et ondblclick sur un div [ par moumouf ] Bonjour, J'ai un soucis apparement récurrent : (google donne pas mal de résultat, mais rien de bien adapté à mon cas). J'aimerai faire la distinctio onclick sur conteneur div [ par yann68moh ] Bonjour à tous, Je rencontre un petit soucis et malgré toutes mes recherches je n'arrive pas a trouvé une solution... Je m'explique : J'ai deux div Arret/reprise timer [ par ju0123456789 ] Bonjour, J'ai une fonction que j'ai dèv. qui compte le temps passé sur une page, j'aimerais rajouter un bouton "stop timer" et "reprise timer", mais Fonction javasceript ne detecte pas mon attribut css marginLeft [ par barikapix ] Bonjour tout le monde, Tout d'abord, j'espère que ce n'est pas la 1289756390653721ème f"ois que quelqu'un pose cette question. Voila 1 semaine que j Galerie Jquery et Zoom, besoin d'aide pour finaliser code [ par Annadrill ] Bonjour, j'ai une page créé en php ou j'ai plusieurs petites images et une grande image et lorsque je clique sur une des petites images cela me char afficher le contenu de tbody [ par addrock ] salut a tous j'ai créé cette code qui me permet d'afficher le contenu de "tbody" lorsque je clic sur "clic" alors mon problème je veux afficher le


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,952 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales