dudulebzh35
Messages postés23Date d'inscriptionmardi 23 novembre 2004StatutMembreDernière intervention 8 juin 2009
-
9 juil. 2008 à 10:35
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 2013
-
9 juil. 2008 à 14:33
Bonjour a tous,
J'ai une liste avec le nom de fichiers et de repertoires (dans une table). Lorsque je clique sur un repertoire, je vois ses fichiers, jusque la rien d'exceptionnel mais j'ai un problème lorsque je veux recréer ma nouvelle liste avec les nouveaux fichiers, j'arrive pas a redéfinir correctement mes evenements.
Un ptit bout de code (?)
Lorque je double clique sur un repertoire : (version allégée)
function
Row_OnDoubleClick(obj) {
if (!obj) obj =
this; // explication de cette ligne + bas
var chaine =
"../../Ajax/Default.aspx?folder=" + escape(folder);
var ajax =
new oAjax(chaine);
var text = ajax.CallBackRequest();
CreateRows(text);
}
Petite explication, dans la page html j'ai mis comme evenement pour le double clique de ma ligne :
maligne.ondblclick = "Row_OnDoubleClick(this);"
Donc quand je recréé ma liste, je commence par supprimer mes lignes de ma table :
function
DeleteRows() {
if (tabFile) {
for (i = tabFile.rows.length - 1; i > 0 ; i --) {
tabFile.deleteRow(i);
}
}
}
Ensuite je créé mes nouvelles lignes :
function
J'ai mis ce qui pose probleme en rouge. Donc sous IE, j'ai dû redéfinir la variable "obj" en fesant if (!obj) obj =
this; (voir + haut) et sous FF il me dit que obj et du type mouseEvent, alors comment faire pour définir une fonction a une ligne (par exemple) avec comme parametre soit meme.
J'espere avoir assez clair, sinon je vous fait confiance pour me le dire...
merci d'avance
Kenavo.
A voir également:
Affectation d'un fonction pour un evenement pour IE et FF?
dudulebzh35
Messages postés23Date d'inscriptionmardi 23 novembre 2004StatutMembreDernière intervention 8 juin 2009 9 juil. 2008 à 11:35
re,
Je voudrais affecter au clique de ma ligne une fonction déjà défini et qui a comme parametre soit meme.
function MaFonction(obj) {
// obj represente this.
}
maligne.onclick = MaFonction;
(j'espere que la syntaxe est correcte?)
le probleme est qu'avec IE, je suis obligé dans la fonction de faire :
if(!obj) obj = this;
et avec FF, this represente l'objet eventMouse.
Comment faire pour affecter une fonction avec comme parametre soit meme.
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 9 juil. 2008 à 12:11
tu veux appeler une fonction avec en paramètre elle-même ?
pas compris... navré. enfin, le but au moins...
tu veux récupérer l'évênement qui a provoqué la fonction ? c'est ça ?
dudulebzh35
Messages postés23Date d'inscriptionmardi 23 novembre 2004StatutMembreDernière intervention 8 juin 2009 9 juil. 2008 à 12:23
Je genere les lignes de ma table en vb.net et je met dans l'evenement onclick=maFonction(this);
comme ca dans la fonction, je peux librement utiliser ma ligne.
function
MaFonction(obj) {
obj.cells[0]....
}
Et quand je clique sur une ligne j'efface mes lignes pour en créer d'autres. Donc je les créer en javascript et j'ai besoin d'affecter au click sur la nouvelle ligne le meme evenement que j'ai generé en vb.
donc pour ce faire je fait :
maligne.onclick = MaFonction;
j'aimerai faire un truc du genre :
maligne.onclick = MaFonction(maligne);
mais comme ca, ca n'existe pas. est ce possible ? ou si vous avez une autre solution, je suis preneur.
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 9 juil. 2008 à 14:04
et bein.. ça ça baigne :
row.onclick=function() { MaFonction(this); };
même principe pour les autres évênements
<hr /> Cordialement Bul [mon Site] [M'écrire]
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 9 juil. 2008 à 14:33
on s'est croisés... je n'avias pas compris que tu avais compris,
et que tu disais que ça baignait.... nickel alors si cela convient et merci du retour.
<hr /> Cordialement Bul [mon Site] [M'écrire]