Bonjour
Mon but est de faire un drag & drop.
Pour cela il existe pleins de librairies, j'en ai testé 2-3, j'arrive à faire des choses. Mais quelque soit celle que j'utilise, je suis face à la même problématique : comment exploiter les id des éléments droppés....(D'ailleurs c'est une question plus générales, qui n'a même rien à voir avec le drag & drop finalement // mais qui me serait diablement utile.)
En quelques mots le code se resume souvent à ce principe, ceci quelque soit la librairie utilisée.
Ceci est fonctionnel.
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 // les elements draggables <div id="elementDraggable1">bblabalabl</div> <div id="elementDraggable2">bblabalabl</div> //et dun autre côté des zones droppables <div id="zoneDrop1">bblabalabl</div> // init du moteur de drag drop Drag.add(elementDraggable1); Drag.add(elementDraggable2); Drop.add(zoneDrop1, functionQuiVaEtreAppelerQuandUnElementEstDroppeDessus); // que fait cette fameuse fonction ? function functionQuiVaEtreAppelerQuandUnElementEstDroppeDessus(IdelementDroppe) { alert('IdelementDroppe a été drag-droppé '); }
Maintenant mon problème : Que faire de cet ID, comment l'exploiter....
Est-ce qu'il y a moyen en javascript de donner des attributs quelconques à une div ? (un tag personnalisé) ?
genre
voilà je pense que vous avez compris mon problème. Avec un id d'un composant html, ça ne m'avance pas trop....il me faut des id de base de données des objets déplacés
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 <div id="draggable1" attributs="categorie-5/compteur-10/produit-5050/idBdd-99555">Zone draggable1 </div> function onDrop(idElementDroppe) { // recuprer tous nos tags speciaux valeursPerso = getElementbyId(idElementDroppe).getAttributs(); data = fonction_genre_explode("/",valeursPerso ); // puis là- avoir les attributs et en faire ce qu'on veut if (data[categorie] == "5") alert('cet element na pas le doit detre drag& droppé ici') if (data[categorie] == "4") Appeler_sauvegarder_base_de_donnees_ajax(data[produit],data[categorie],data[compteur]) if (data[categorie == "2"]) window.location = 'voir_profil_user.php?id=data[user]' // etc // etc // etc. }
Est-ce possible ? Sinon comment faire de façon propre....
La seule solution que j'ai en tête pour l'instant c'est de faire
Mais ça me semble très mauvais. Comment faire ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <div id="objetDraggale_JE CONCATENE_TOUTES_LESINFOS_LA_DEDANS">blablablaba</div> function on drop(IdDroppe) { numeroSerie = subString(idDroppé , 0 ,8 ); autreInfos = subString(idDroppé,9,2 ); EncoreUneAutreInfos = subString(idDroppé,12,6 ); appeler script php (numeroSerie ,autreInfos ,EncoreUneAutreInfos ) }
Merci !
Partager