Pour enseigner moi-même Javascript, je suis en train de faire une page web qui donne aux utilisateurs une liste d'éléments (par exemple les aliments), leur demande de trier ces aliments de favori au moins favori, et soumettre les données quand ils sont fait. L'utilisation Sortables jQuery semble être une bonne façon de le faire. Cependant, je ne suis pas sûr de savoir comment devrait se produire la soumission de données.
Voici ce que je pense. Chacun de ces produits alimentaires serait dans un div comme ceci:
<div id=sortable>
<div id=1 class=foods>Pizza</div>
<div id=2 class=foods>Sushi</div>
<div id=3 class=foods>Taco</div>
</div>
Lorsque l'utilisateur clique sur un bouton « Soumettre », je veux l'ordre de ces éléments à déterminer, et pour cette commande à envoyer au serveur (en passant, j'utilise Django sur le côté serveur). Il semble que je peux déterminer l'ordre des éléments avec une fonction comme ceci:
function getOrder()
{
var foods = $(.foods);
var ids = [];
for(var x=0; x<foods.length; x++)
{
ids.push(foods[x].id);
}
return ids;
}
Cependant, je suis coincé sur deux choses:
- Où dans mon code que j'appeler cette fonction? Je pense que ce serait une action onclick lorsque l'utilisateur appuie sur le bouton soumettre, mais je ne sais pas où les données que la fonction retourne obtiendraient passé.
- Quel format serait le plus approprié pour envoyer cette commande au serveur (par exemple JSON)?
(Je sais que cela est vraiment une question de base, mais je ne l'ai jamais fait une page Web avec JavaScript avant, donc ce domaine de la programmation est tout nouveau pour moi.)